SQL Join查询帮助

时间:2010-04-30 07:47:02

标签: sql mysql join left-join

我有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?

由于

1 个答案:

答案 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'