我有我的记录(在示例 1000 上),它与使用 parentid 的其他记录相关。我想在它的所有“孩子”都处于关闭状态时选择该记录!
表是 T1:
ID PARENTID STATUS
1000 null PENDING
1001 1000 CLOSED
1002 1000 CLOSED
我写了 SQL,但它返回我 null 尽管它不应该(“不在”不能很好地工作)
SELECT ID
FROM T1
WHERE PARENTID IS NULL AND ID NOT IN (SELECT PARENTID FROM T1 WHERE STATUS!='CLOSED' )
但它返回的是我的 null 虽然SELECT PARENTID FROM ID WHERE STATUS!='CLOSED'
不返回 1000。为什么?如果“NOT IN”子句不起作用,如何选择。
非常非常重要的事情是我不能使用"WHERE PARENTID=ID"
,虽然我知道这将是解决方案,但我必须以不同的方式来做!