看板 Database 關於我們 聯絡資訊
在不確定每筆ftid對應多少content筆數的情況下 個人經驗是, 在oracle92是做不到的 如果能確定對應多少個content, 或是預估多少個content 且在每個ftid之下的content編上序號:cont_seq table b : faid | ftid | ftname | content | cont_seq -------|----------|----------|-----------+--------- 0 | 0 | name1 | content1 | 1 1 | 0 | name1 | content2 | 2 2 | 1 | name2 | content3 | 1 3 | 1 | name2 | content4 | 2 4 | 1 | name2 | content5 | 3 5 | 2 | name3 | content6 | 1 將每筆cont_seq decode成橫向欄位(or ||) 或許就可以做到, 但非常不完美. 至於要如何編上cont_seq, 可能要請達人來解惑 SELECT ftid, ftname, MAX (DECODE (cont_seq, 1, content)) cont1, MAX (DECODE (cont_seq, 2, content)) cont2, MAX (DECODE (cont_seq, 3, content)) cont3 FROM TEST GROUP BY ftid, ftname; -- FTID FTNAME CONT1 CONT2 CONT3 0 NAME1 CONTENT1 CONTENT2 1 NAME2 CONTENT3 CONTENT4 CONTENT5 2 NAME3 CONTENT6 ※ 引述《BlowMe (我是一只嗩吶)》之銘言: : 我遇到一種情況, : 有兩個table, : table a: : ftid | ftname : -------|--------- : 0 | name1 : 1 | name2 : 2 | name3 : table b : : faid | ftid | ftname | content : -------|----------|----------|----------- : 0 | 0 | name1 | content1 : 1 | 0 | name1 | content2 : 2 | 1 | name2 | content3 : 3 | 1 | name2 | content4 : 4 | 1 | name2 | content5 : 5 | 2 | name3 | content6 : 類似這樣, : 其中table a的ftid跟table b的faid都是主鍵值與自動累加1, : 而table b的ftid與ftname是從table a來的, : 假如我想要從table b中,找出相同的ftid與ftname, : 把它們的content加在一起,像table c: : ftid | ftname | content : -------|----------|--------------------------- : 0 | name1 | content1content2 : 1 | name2 | content3content4content5 : 2 | name3 | content6 : 請問這有辦法下SQL做到嗎? : 先說聲感謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.243.151.204 ※ 編輯: gargamel 來自: 210.243.151.204 (11/15 12:36)