我有两张桌子:
表1
ID | Name | Code
1 Joe 123
2 Sam 674
3 Mike 321
表2
ID | User Name| Code
1 Joe 123
2 Sam 674
3 Mike 321
4 John 457
5 Tim 235
期望的结果:
4|John|457
5| Tim|235
Tabe1和table2代码完全相同。表1代码是添加的新字段,因此不包含任何记录的数据。使用ID作为键我从table2获取代码并在table1中填充它们。但是table1的ID比table2少得多,因此table2有更多的代码然后是table1。我想查询哪些代码没有转移到table1。我认为它会如此简单:
select *
from table2 t2
where t2.Code is not null and
t2.Code not in (select t1.Code from table1 t1 where t1.Code is not null);
这不会给我带来任何奇怪的东西。我需要在此查询中调整什么?这是为了oracle。
答案 0 :(得分:1)
您可以尝试以下方法:
SELECT t2.*
FROM table2 t2
WHERE NOT EXISTS ( SELECT 1 FROM table1 t1
WHERE t1.code = t2.code );