天天看點

mysql group by 按組傳回 top 10 資訊

需求:

對 mysql 輸出進行 groug by 排序并執行 top 10 傳回

前提:

目前需對 zabbix 執行自定義監控資料傳回.

涉及到的表比較多,  下面作出簡單的說明

hosts_groups 用于記錄主機與組的 id 關系

groups 表用于記錄主機組資訊

hosts 表用于記錄主機資訊

item 用于記錄監控項

history 與 history_uint 表結構一樣, 都是用于記錄 items 的記錄, 但 history_unit 記錄的是通過 discovery 方式發現的 items. (具體資訊參考

如果覺得複雜, 可以直接建立下面的表進行測試.

看下面的方法, (以真實資料進行測試咯) 是以傳回值與上述表不一樣

1. 擷取一行的 top 資料

2. 把其他列的資料也添加上去

3. 要建立 group by 方式的 top 10 , 需要建立一個臨時表.

4.  最終結果, 按照 group by 輸出 top 10 資訊



繼續閱讀