我有一張表記錄了UNIX時間有一個Time字段的事務,所以每行都是一個事務。 現在我想知道哪一秒有一天中最大的交易?選擇每天總和()的最大值
結果應該是:
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 99 3-Oct-2013 15:02:33 70
請幫幫忙,在此先感謝。
我有一張表記錄了UNIX時間有一個Time字段的事務,所以每行都是一個事務。 現在我想知道哪一秒有一天中最大的交易?選擇每天總和()的最大值
結果應該是:
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 99 3-Oct-2013 15:02:33 70
請幫幫忙,在此先感謝。
嘗試像下面的查詢
Select time, Max(count) as max_count from (
SELECT Date_format(from_unixtime(unix_timestamp_column), '%Y-%m-%d') as date,
from_unixtime(unix_timestamp_column) as time,
count(*) as count
from your_table group by time) a group by Date
SELECT DISTINCT your_time_column_name FROM表名;
SELECT * FROM table_name的WHERE your_time_column_name = 「時間」
SELECT MAX(COUNT_NO), TIME_COLUMN FROM (SELECT COUNT(*) COUNT_NO ,TIME_COLUMN FROM
TABLE_NAME
GROUP BY TIME_COLUMN)
試試看。
select yourtimecolumn,max(totalTrans) from (
select yourtimecolumn, count(id) as totalTrans
from yourtable
group by yourtimecolumn)a
group by day(yourtimecolumn)
一種方式做到這一點
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演示
注:,在這個例子中,你必須有在第一天
@ user2845662有幫助嗎?你的問題需要更多幫助嗎? – peterm
交易的數量相同的最高值兩個時間戳你嘗試了什麼,你卡在哪裏? –