我使用以下查询连接两个表:
select * from t1
LEFT JOIN t2 ON t1.First1=t2.FirstName
and t1.Last1=t2.LastName
and t1.City=t2.City
and t1.ST=t2.State;
现在,如何运行一个单独的查询来打印t2中未联接的行?
我尝试在字段中使用not-in,但收到错误:错误代码:1241。操作数应包含1列
select * from t2 where t2.RefID NOT IN (
select * from t1,t2 where t1.First1=t2.FirstName
and t1.Last1=t2.LastName
and t1.City=t2.City
and t1.ST=t2.State);
2条答案
按热度按时间yfwxisqw1#
试试这个:
使用前
NOT IN
你应该记住:关于not exists和not in最重要的一点是,与exists和in不同,它们在所有情况下都不是等价的。具体来说,当涉及空值时,它们将返回不同的结果。具体地说,当子查询返回一个null时,not in将不匹配任何行。
h79rfbju2#
翻转连接并检查不匹配的。。。