0
確定的領域特定的順序排序我有以下查詢(問題簡化版本)如何通過使用一個case語句
select case when pool_type in ('WN','PL','SH','EX','QN')
then pool_type else 'Other' end as pooltype,
sum(wagered)
from wageringactivitytable
group by case when pool_type in ('WN','PL','SH','EX','QN')
then pool_type else 'Other' end
我要訂購按特定順序的結果(WN, PL,SH,EX,QN,其他)這是甚至有可能給我建立我的SQL查詢的方式?
我嘗試過使用另一個case語句(如'case pool_type when'WN',然後1'PL'then 2等等。)但是這樣做不起作用,因爲pool_type在order by子句中無效因爲它既不在agregate函數或group by子句包含....
我試過指的列的位置,而不是它的名字,但在這種情況下,順序完全被忽略..
case 1 when 'WN' then 1
when 'PL'then 2
....
when 'Other' then 6
end
我想過這個選項。我可能最終會這樣做(在這種情況下,我會接受你的答案) – MrVimes
@MVVimes - 請參閱選項2! :D – Hogan
謝謝。我確實看過選項2.爲了我的直接目的,我選擇了選項1,但爲了便於維護,我將考慮更改爲選項2 – MrVimes