看板 Database 關於我們 聯絡資訊
我還蠻愛一串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
ClareQ:用decode不用寫這麼多層,它還滿像case可做多重判斷的, 02/03 23:42
ClareQ:可惜不是標準SQL語法。decode(expr,s1,r1,s2,r2,...,else) 02/03 23:50
gargamel:哈哈..我弄錯了..不用decode這多次... 02/03 23:57
已修改! ※ 編輯: gargamel 來自: 210.64.100.184 (02/04 00:01)