看板 Database 關於我們 聯絡資訊
※ 引述《phreat (雷)》之銘言: : 因為sql語法實在太弱,又上線請各位賜教了 : table_a : a b time id : 1 2 110901 1 1 : 3 4 110903 1 : table_b : c d time id : 5 6 110902 1 : 想利用mysql 語法 輸出成這樣 : 0的地方也可以是null : a b c d time : 1 2 0 0 110901 : 0 0 5 6 110902 : 3 4 0 0 110903 : 試過這個語法 : SELECT a,b,time FROM `table_a` where `id`='1' union all SELECT c,d,time FROM : `table_b` WHERE `id`='1' ORDER BY `time` ASC 我想到的是這個方式 (SELECT a,b,0 AS c,0 AS d,time FROM table_a WHERE id='1') union (SELECT 0 AS a,0 AS b,c,d,time FROM table_b WHERE id='1') ORDER BY time ASC 先把缺的欄位先增加上去 再union 就是 把0 或者說'0'視為一個欄位 名稱是xxx 加在select出來的資料上 : 但會變成 : a b time : 1 2 110901 : 5 6 110902 : 3 4 110903 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.67.240.99 ※ 編輯: maplenote 來自: 203.67.240.99 (09/21 13:11)
cutecpu:推 09/21 14:00
phreat:呵 跟我現在的做法一樣,不過還是非常感謝你唷^^ 另外我是用 09/21 22:11
phreat:union all 因為我的資料相同的要保留下來 09/21 22:16