【问题标题】:MySQL select using datetime, group by date onlyMySQL选择使用日期时间,仅按日期分组
【发布时间】:2010-04-22 16:51:15
【问题描述】:

是否可以从 MySQL 表中选择一个日期时间字段并仅按日期分组?

我正在尝试输出多次发生的事件列表,按事件发生的日期分组。

我的表/数据如下所示:(时间戳是一个日期时间字段

1. 2010-03-21 18:00:00  Event1
2. 2010-03-21 18:30:00  Event2
3. 2010-03-30 13:00:00  Event3
4. 2010-03-30 14:00:00  Event4

我想输出如下内容:

March 21st
1800 - Event 1
1830 - Event 2

March 30th
1300 - Event 3
1400 - Event 4

谢谢!

【问题讨论】:

标签: sql mysql group-by


【解决方案1】:

select date_format(created_at, "%Y-m-%d") as date from tablename GROUP BY date

SELECT DATE_FORMAT(date_column, '%H%i') as time, event FROM table ORDER BY DATE_FORMAT(date_column, '%Y-%m-%d'), time

【讨论】:

    【解决方案2】:
    SELECT DATE_FORMAT(date_column, '%H%i'), DATE_FORMAT(date_column, '%M %D'), event FROM table ORDER BY date_column
    

    %H%i - 1830

    %M%D - March 21st

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-18
      • 1970-01-01
      • 2011-01-16
      • 2017-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多