Re: [SQL ] 問一個排序的問題

看板Database作者 (Nerding)時間18年前 (2008/02/03 22:58), 編輯推噓2(201)
留言3則, 2人參與, 最新討論串4/4 (看更多)
我還蠻愛一串SQL解完問題. 不確定下面正不正確, 現在沒有機器可以RUN 參考看看... (ORACLE, 原po推文有提到case的語法, 但它是9以後的版本才支援, 我很才用到:p) SELECT value1, decode(v2,'1','111', '2','222', '3', null, '4','333', '5','000') value2 FROM ( SELECT value1, max(decode(value2,'111','1', value2,'222','2', value2, null,'3', value2,'333','4', value2,'000','5')) v2 FROM t1 GROUP BY value1) ※ 引述《RD (Rework & Delay)》之銘言: : 一個範例的Table→ : T1 : ID(PK) Value1 Value2 : ---------------------- : 251 AAA 111 : 252 BBB 333 : 253 AAA [null] : 254 BBB 222 : 255 AAA 000 : 256 CCC 222 : 257 CCC [null] : 希望能產出下面的報表 Value1為UNIQUE : Value1 Value2 : -------------- : AAA 000 : BBB 333 : CCC [null] : Value2的規則是 000 > 333 > [null] > 222 > 111 : 我只會到 SELECT Value1, Value2 FROM T1 GROUP BY Value1 : 請問要怎麼處理Value2的規則呢?? -- 東森───────╮ ╭─────聯合 三立───╮ ╭─蘋果 超扯M型崩潰正夯詢問度超高宅男傻眼踼爆 自由─╯ ╰───中天 民視─────╯ ╰─────────TVBS Gargamel_〆 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.64.100.184

02/03 23:42, , 1F
用decode不用寫這麼多層,它還滿像case可做多重判斷的,
02/03 23:42, 1F

02/03 23:50, , 2F
可惜不是標準SQL語法。decode(expr,s1,r1,s2,r2,...,else)
02/03 23:50, 2F

02/03 23:57, , 3F
哈哈..我弄錯了..不用decode這多次...
02/03 23:57, 3F
已修改! ※ 編輯: gargamel 來自: 210.64.100.184 (02/04 00:01)
文章代碼(AID): #17fTQQAZ (Database)
文章代碼(AID): #17fTQQAZ (Database)