gpt4 book ai didi

mysql - 选择每天 sum() 的最大值

转载 作者:行者123 更新时间:2023-11-29 13:32:44 26 4
gpt4 key购买 nike

我有一个表记录事务,其中包含 UNIX 时间的时间字段,因此每一行都是一个事务。现在我想知道一天中哪一秒的交易量最大?

结果应该是:

1-Oct-2013 20:02:34 45 ->(in day 1, at 20:02:34, we have 45 transaction for maximum, so on)2-Oct-2013 12:34:21 993-Oct-2013 15:02:33 70

请帮忙,先谢谢了。

最佳答案

一种方法

SELECT FROM_UNIXTIME(time) time, MAX(tcount) tcount
FROM
(
SELECT time, COUNT(*) tcount
FROM transactions
GROUP BY time
) q
GROUP BY DATE(FROM_UNIXTIME(time))

这里是SQLFiddle 演示

<小时/>

现在,如果您希望能够查看每天有联系的热门交易的时间戳,那么您需要模拟 DENSE_RANK() 分析函数。一种方法来做到这一点

SELECT FROM_UNIXTIME(a.time) time, a.tcount
FROM
(
SELECT time, COUNT(*) tcount
FROM transactions
GROUP BY time
) a JOIN
(
SELECT DATE(FROM_UNIXTIME(time)) date, MAX(tcount) tcount
FROM
(
SELECT time, COUNT(*) tcount
FROM transactions
GROUP BY time
) q
GROUP BY DATE(FROM_UNIXTIME(time))
) b
ON DATE(FROM_UNIXTIME(a.time)) = b.date
AND a.tcount = b.tcount;

这里是SQLFiddle 演示

注意:在此示例中,您有两个时间戳,它们在第一天的交易数量最大值相同

关于mysql - 选择每天 sum() 的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19176349/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com