0
我有2個表。SQL Mach 2表
表1
- 具有計數約2700行
- Colums:ID,NO,NAME
表2:
- 具有計數大約300行
- Colums: ID,名稱
其中:
Table1.NO = Table2.ID
我想列出表1(2700行),但如果表1中不包含一些表2的行我想寫「NA」
我怎麼能做到這一點與SQL?
我有2個表。SQL Mach 2表
表1
表2:
其中:
Table1.NO = Table2.ID
我想列出表1(2700行),但如果表1中不包含一些表2的行我想寫「NA」
我怎麼能做到這一點與SQL?
我假設你要輸出從表2的名稱,如果它的存在,在這種情況下:
SELECT
a.id,
isnull(b.name, 'NA'),
a.name
FROM
table1 a
LEFT JOIN
table2 b
ON
a.no = b.id
會爲你做它(我也輸出了table1的id和name)。
編輯:
道歉,我沒有看到MySQL的標籤,直到我張貼。您將需要使用3210功能,而是如果isnull
,就像這樣:
SELECT
a.id,
coalesce(b.name, 'NA'),
a.name
FROM
table1 a
LEFT JOIN
table2 b
ON
a.no = b.id
嘗試LEFT JOIN
和ISNULL
功能像下面這樣
SELECT ISNULL(Table1.Name,'NA')
FROM Table1
LEFT JOIN Table2
ON Table1.NO = Table2.ID
有ISNULL函數在MySQL? –
是的,http://forums.asp.net/t/1162409.aspx/1 – 5uperdan