我有一个清单A:
Item | Company
1 | aa
2 | bb
列表B:
Item | Info
2 | blablabla
我有以下查询:
SELECT a.item, concat(A.company, ' - ', B.info)
From A LEFT JOIN B on A.item = B.item
这就是我得到的:
1 None
2 bb - blalal
我想要的是:
1 aa -
2 bb - blalal
答案 0 :(得分:1)
concat()
,则 NULL
会返回NULL
一个简单的解决方案是coalesce()
:
SELECT a.item, concat(A.company, ' - ', coalesce(B.info, ''))
From A LEFT JOIN
B
on A.item = B.item;
您似乎想要分隔符。如果你没有,另一种选择是:
SELECT a.item, concat_ws(' - ', A.company, B.info)
答案 1 :(得分:0)
利用IFNULL
SELECT A.Item, CONCAT(A.Company, ' - ', IFNULL(B.Info,''))
FROM A
LEFT JOIN B ON A.Item=B.Item;