我有2个表A和B,其中包含以下列 表A - id,bId,aName,aVal 表B - id,bName
其中A.bId与B.id相同。我想要一个查询的结果集来获取
A.id,A.aName,B.bName,其中A.bId = B.id 或 A.id,A.aName,“”当A.bId = 0 时。
在这两种情况下,只应考虑那些记录 A.aVal LIKE“aVal”
有人可以帮我查询一下吗?我可以使用左连接,但是如果bId = 0则如何获取空字符串,否则为B.bName?
由于
答案 0 :(得分:3)
SELECT a.id, a.aname, COALESCE(b.bname, '')
FROM a
LEFT JOIN
b
ON b.id = NULLIF(a.bld, 0)
WHERE a.aval LIKE 'aval'