我使用下面的数据来获取TYPEID的代码,该代码在表2中不存在或存在且在RTURNDTE列中不为空。
我已经管理了它从表1中返回符合条件的所有行,但我希望它只返回代码列中的一行 符合标准,无法弄清楚如何。
数据:
表1:
+-----------+----------+
| CODE | TYPEID |
+-----------+----------+
| 441 | mn014 |
| 223 | mn014 |
| 224 | mn014 |
| 655 | mn089 |
| 854 | mn089 |
| 449 | mn032 |
+-----------+----------+
TABLE2:
+-----------+----------+----------+
| CODE | TAKENDTE | RTURNDTE |
+-----------+----------+----------+
| 441 | 25/08/14 | 01/01/15 |
| 223 | 25/08/14 | 03/01/15 |
| 223 | 25/08/14 | 01/02/15 |
| 223 | 25/08/14 | NULL |
| 655 | 25/08/14 | 07/01/15 |
| 854 | 25/08/14 | NULL |
| 449 | 25/08/14 | 06/01/15 |
+-----------+---------------------+
我的代码:
select t1.*
from table1 t1
where typeid = 'mn014' and
not exists (select 1
from table2 t2
where t2.code = t.code and
t2.rturndte is null
);
任何帮助都会很棒,坚持几个小时,谢谢。