2011-09-30 114 views
5

假設我有一個包含名稱,ID和引用其他表的ID的外鍵的表設置。該名稱可以爲null。當我從這個表中選擇所有記錄時,如果它不是null,我想要獲取該名稱。如果是這樣,我想獲取外鍵引用的記錄的名稱。我可以根據需要修改數據庫結構,或者我可以簡單地更改查詢。我有什麼選擇?MySQL - 如果列爲空,則從另一個表中檢索值

回答

13

使用IFNULLCOALESCE

SELECT T1.ID, IFNULL(T1.name, T2.name) AS name 
FROM firsttable T1 
LEFT JOIN secondtable T2 
ON T1.T2_id = T2.id 
+0

我們有winnar!謝謝! – Fibericon

1

使用ISNULLsql

SELECT T1.ID, ISNULL(T1.name, T2.name) AS name 
FROM firsttable T1 
LEFT JOIN secondtable T2 
ON T1.T2_id = T2.id 
相關問題