我有两个表Say A和B. A是主表,B是子表,我需要从中获取值。
select A.Id, A.Name, B.Path from A,B where A.Id=B.Id
现在,我想添加第3个表格的列,它是表格的子项,B',即C,即C.File。
如果C.SubId = B.SubId为false,则C.File的值为null否则当条件变为true时将返回值。
答案 0 :(得分:3)
这是left join
:
SELECT a.id, b.name, b.path, c.file
FROM a
JOIN b ON a.id = b.id
LEFT JOIN c ON b.subid = c.subid
答案 1 :(得分:1)
你需要LEFT JOIN
我可以收集的第三张桌子。
SELECT A.Id, A.Name, B.Path, C.file
FROM tableA a
INNER JOIN tableB b ON a.id = b.id
LEFT JOIN tableC c ON b.subid = c.subid
答案 2 :(得分:0)
使用INNER JOIN
简单地加入所有三个表格select A.Id, A.Name, B.Path ,C.File
FROM A
INNER JOIN B
ON A.Id=B.Id
INNER JOIN C
ON C.SubId=B.SubId