我有桌子,T1和T2。
TBL1
Name
A
B
C
D
E
F
TBL2
Name Status
A 0
B 4
C 1
D 4
现在我想根据Tbl2显示来自Tbl1的所有记录,除了那些状态为4的记录。该表应如下所示:
一个 C Ë ˚F
My query returns only result which are identical and don't have status 4:
SELECT Tbl1.Name, Tbl2.Name
LEFT JOIN Tbl1 ON Tbl2.Name = T1.Name
WHERE Status != 4
答案 0 :(得分:1)
添加条件以查找非连接行:
SELECT Tbl1.Name
FROM Tbl1
LEFT JOIN Tbl2 ON Tbl2.Name = T1.Name
WHERE Status != 4
OR Status IS NULL
需要对Status IS NULL
进行测试,因为对于没有连接的所有行,Status != 4
不成立,因为在这种情况下所有列都为null
并且null
既不等于也不等于任何价值。
你的查询也有些搞砸了,所以我也解决了。
答案 1 :(得分:0)
SELECT A.name
FROM Tbl1 A, Tbl2 B
WHERE A.name=B.name AND B.status!=4