【问题标题】:Select and group rows in summary by hour按小时在摘要中选择和分组行
【发布时间】:2009-10-27 19:56:03
【问题描述】:

我有一个包含查看/点击记录的表格。时间存储在 unix 时间戳中,我需要能够在特定的月/日(基于时间戳)内提取所有这些,但更重要的是,我不知道该怎么做的部分是将它们分组按小时。我需要能够在单个查询中执行此操作,而不是每小时循环一次。

数据库是 MySQL,语言是 PHP。

【问题讨论】:

    标签: php mysql timestamp group-by


    【解决方案1】:
    select hour(somedate), count(*) from yourtable group by hour(somedate)
    

    如果您需要全部三个:

    select month(somedate), day(somedate), hour(somedate), count(*) from yourtable group by month(somedate), day(somedate), hour(somedate)
    

    【讨论】:

    • 当我运行以下查询时: SELECT * , HOUR( TIMESTAMP ) AS HOUR FROM ad_view LIMIT 0 , 30 它返回 838 作为小时,它应该是当天的小时数。
    • 抱歉,时间戳为当前日期 (0-24) 的小时数。
    • 你确定这真的是一个时间戳吗?它是存储在 int 列中的时间戳整数还是什么?
    • hour() 需要时间,而不是 unix 时间戳。您想使用小时(from_unixtime(somedate))。其他功能也一样?
    • 如果是unix timestamp int而不是timestamp类型的列,keith可能是对的
    猜你喜欢
    • 1970-01-01
    • 2011-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-29
    • 2021-09-29
    相关资源
    最近更新 更多