分組最高值我有一個查詢:從與一個由查詢
select substr(name,7,50) as location, points,sum(if (p1=r1,10,-10))as total from
dq.data
group by points,location order by location,total desc
將會產生這樣的數據:
FRANCE |0|2|0|0|0|0|1 110.0
FRANCE |0|2|1|0|1|2|1 100.0
FRANCE |0|2|0|0|0|1|1 100.0
FRANCE |0|2|1|0|0|1|1 100.0
FRANCE |0|2|0|1|1|2|1 100.0
FRANCE |0|2|0|0|1|1|1 100.0
GERMANY |1|0|2|2|2|1|0 120.0
GERMANY |1|0|2|2|2|0|0 110.0
GERMANY |1|0|2|2|2|2|0 110.0
GERMANY |1|0|2|2|2|0|2 110.0
GERMANY |1|0|2|2|2|1|1 110.0
我想要得到最高total
和每個location
相關points
。
我應該結束了:
FRANCE |0|2|0|0|0|0|1 110.0
GERMANY |1|0|2|2|2|1|0 120.0
我相信我需要使用子查詢和MAX(total)
,但我不能得到這個工作。 在子查詢中,我想選擇points
,但我不想通過它進行分組,這顯然是不允許的。
我該如何去做這件事?
謝謝戈登,我會放棄這一點。它不支持row_number(),它也不允許你選擇*(或t。*我認爲)。我假設我可以硬編碼字段的名稱? –
重視領域是正確的選擇。我只是在答案中使用「*」,因爲它的輸入速度更快。不過,一般來說,你想要明確字段名稱。 –
這很好 - 我試了一下,報告回來,如果一切正常,我會在那個時候接受。再次感謝 –