我有一個表medic_appointment
與以下字段:datetime_diagnosis
(DATETIME
類型)和diagnosis
。我需要執行一個查詢,它會顯示出每種疾病發生率最高的YEAR_MONTH
。SQL:如何使多個COUNT/MAX
我目前在這一點上:
SELECT disease , COUNT(*) AS frequency ,
EXTRACT(YEAR_MONTH FROM datetime_diagnosis) AS interval
FROM medic_appointment
GROUP BY disease , interval
導致下面的示例表:
disease frequency interval
-------- --------- --------
disease1 5 201609
disease1 8 201610
disease1 22 201611
disease1 1 201612
disease2 7 201611
我試圖做這樣的事情:用上面提到的查詢,增加它以這種方式,它會選擇最高頻率的數字,並返回間隔和疾病領域,然後按疾病分組......但它不是以這種方式工作,我只是找不到另一種方法來弄清楚。不知道這是否是最佳選擇。
編輯:預期的結果:
disease frequency interval
-------- --------- --------
disease1 22 201611
disease2 7 201611
提供文字預期的結果是非常複雜的理解。提供預期的結果集。 – Viki888