当前位置: 首页 > 面试题库 >

按日期显示MySQL结果

厉高逸
2023-03-14
问题内容

我有这个mysql表:

+--------------------+---------+-------+
|      date          | query   | count |
|--------------------+---------+-------|
|2012-11-18 09:52:00 | Michael |   1   |
|2012-11-18 10:47:10 |  Tom    |   2   |
|2012-11-17 15:02:12 |  John   |   1   |
|2012-11-17 22:52:10 |  Erik   |   3   |
|2012-11-16 09:42:01 |  Larry  |   1   |
|2012-11-16 07:41:33 |  Kate   |   1   |
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

等等。我可以简单地获取结果并通过以下代码按日期将其排序:

$queries = mysql_query("SELECT * FROM my_tables ORDER BY date DESC LIMIT 20"); 
while($row = mysql_fetch_array($queries)){
    echo "Name ".$row['query']."";
}

但是如何显示按特定日期排序的表中的元素,如下所示:

In 2012-11-18:
Michael
Tom

In 2012-11-17:
John
Erik

In 2012-11-16:
Larry
Kate

等等。谢谢!


问题答案:

这是PHP代码:

$query = mysql_query("SELECT date, query FROM table6 ORDER BY date DESC LIMIT 20");
$group_date = null;
while ($row = mysql_fetch_assoc($query)) {
    if ($group_date !== substr($row["date"], 0, 10)) {
        $group_date = substr($row["date"], 0, 10);
        echo "<h1>$group_date</h1>\n";
    }
    echo "${row['query']}<br>\n";
}

输出:

汤姆

麦可

2012-11-17

埃里克

约翰

2012-11-16

拉里

凯特

请注意,虽然此代码将行按一列“分组”,但可以轻松地扩展为按多列对行进行分组。留作练习。



 类似资料:
  • 问题内容: 如何显示mysql中的剩余/互补日期? 例如,在我的表中有2列,其中有一个快照 将给出以下输出: 我希望能够显示我们之间有一个空白并且没有任何记录的日期,如下所示: 这可能吗?谢谢 问题答案: 遵循以下原则: 这意味着:在相邻的结束/开始日期将表与其自身连接,然后计算差异。

  • 日期显示方式 设定画面上[年月日]的排列顺序。

  • 我已经创建了摘要仪表板来显示应用程序中的一些错误。我想要的是显示每个日期的错误。它显示错误,但它不会聚合相同的错误消息,因为消息有一些GUID。这是查询的示例部分: 在此输入图像描述

  • 问题内容: 这个问题已经在这里有了答案 : 从日期范围生成天数 (29个答案) 7年前关闭。 我想显示a 和MySQL中的日期之间的所有日期。 例如,具有和字段的表中的数据为: 日期是和 日期, 我想要的结果是: 如何仅使用MySQL查询来实现此目的(而不必使用存储过程,因为我对此并不熟悉)? 编辑: 尽管我仍然没有完全得到想要的结果,但是这里的答案很有帮助。在此示例中,它仅成功运行,但不输出任何

  • 我正在使用Java-Eclipse和oracle SGBD public DefaultTableModel getJoueurData(){

  • 我尝试创建一个查询,显示入住和退房日期之间的可用酒店。此外,当我为特定房间预订时,我将他们的预订列设置为1。这意味着,在现实生活中,当结账日期到来时,触发函数将该预订列设置成0。 如果酒店的所有房间都已预订(预订=1),并且这些房间的签入-退房日期是特定日期(签入-退房输入),则不要将该酒店放在列表中。我的查询不会显示我想要的结果。 查询:输入:国家(状态)、签入和签出。 当我运行查询时,它总是显