0
這是包含日誌我的表:MySQL的排序分組的記錄
message | data
----------------------------------------------
ttt,tu10=UP,tu20=UP | 2016-11-11 10:15:05
ttt,tu10=DOWN,tu20=DOWN | 2016-11-11 10:13:05
ttt,oper=UP,oper2=UP | 2016-11-11 10:13:01
ttt,oper=DOWN,oper2=DOWN | 2016-11-11 10:07:05
hhh,tu10=UP,tu20=UP | 2016-11-11 10:05:04
hhh,tu10=DOWN,tu20=DOWN | 2016-11-11 10:05:01
hhh,tu10=DOWN,tu20=DOWN | 2016-11-11 09:43:01
hhh,tu10=UP,tu20=UP | 2016-11-11 09:37:04
hhh,tu10=DOWN,tu20=DOWN | 2016-11-11 09:35:05
ttt,tu10=DOWN,tu20=DOWN | 2016-11-11 09:35:01
ttt,tu10=UP,tu20=UP | 2016-11-11 09:33:05
ttt,tu10=DOWN,tu20=DOWN | 2016-11-11 05:35:01
hhh,tu10=UP,tu20=UP | 2016-11-11 05:33:05
我創造了這個查詢:在屏幕上
SELECT *
FROM (
SELECT
*,COUNT(*) AS count
FROM log
WHERE data > DATE_SUB(NOW(), INTERVAL 2 HOUR)
GROUP BY substring_index(message,',',1)
) AS tmp
WHERE count > 3
打印: '信息', '數據', '計數'
獲取類似:
ttt,tu10=UP,tu20=UP | 2016-11-11 09:33:05 | 6
hhh,tu10=DOWN,tu20=DOWN | 2016-11-11 09:35:05 | 5
而且我想得到第一個,像這樣:
ttt,tu10=UP,tu20=UP | 2016-11-11 10:15:05 | 6
hhh,tu10=UP,tu20=UP | 2016-11-11 10:05:04 | 5
我已經嘗試了幾種方法來排序,但我放棄了。
ü沒有提到你想在你的問題是什麼?除了你預期的結果,請說你想要什麼關於這個結果。 – Zeina
「GROUP BY substring_index(message,',',1)」這類問題是設計不佳的表現。 – Strawberry
我想顯示一條消息,日期和出現次數,但是我想查看最新的消息和日期。 –