我有两个表,一个包含部件列表,另一个包含属性列表。我想要实现的是列出所有具有属性的部分,以及基本行本身就是la:
Part Attribute
----------------
Cake Batman
Cake Princess
Cake Spiderman
Cake NULL
QUERY
----------------
SELECT p.Name, pa.Name
FROM PartsTbl p
LEFT JOIN PartAttrib pa ON p.Name= pa.BaseName
WHERE p.Name = 'Cake'
目前,这仅返回除最后一行之外的所有内容。如何将最后一行作为同一查询的一部分生成,而不是通过运行第二个查询?
更新---------------
Table Structure
PartsTbl - Name
PartAttrib - BaseName (To PartsTbl.Name), Name
答案 0 :(得分:1)
一个简单的联盟是你的朋友:o)
SELECT p.Name, pa.Name
FROM PartsTbl p
LEFT JOIN PartAttrib pa ON p.Name= pa.BaseName
WHERE p.Name = 'Cake'
UNION
SELECT Name, NULL
FROM PartsTbl
WHERE Name = 'Cake'