用什么可以代替not in语句?

ondogdog 2006-12-25 10:09:45
我有一条sql语句,

SELECT DISTINCT POWS,JONO
FROM TMP_TABLE
WHERE QTY>0 AND DEPT='AA' AND CELL='BB' AND
(POWS NOT IN (SELECT POWS_P FROM TABLE1 WHERE DEPT_P='AA' AND CELL_P='BB')) AND
(JONO NOT IN (SELECT JONO_J FROM TABLE2 WHERE DEPT_J='AA' AND CELL_J='BB'))
ORDER BY JONO

我的目的是想用另一条sql语句来代替not in的,既语句中不出现not in!
...全文
707 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jasonren 2006-12-25
  • 打赏
  • 举报
回复
not exsits
Hahahahahaha 2006-12-25
  • 打赏
  • 举报
回复
SELECT DISTINCT POWS,JONO
FROM TMP_TABLE a
WHERE QTY>0 AND DEPT='AA' AND CELL='BB' AND
not exists (
SELECT 1 FROM TABLE1 WHERE DEPT_P='AA' AND CELL_P='BB' AND POWS_P=a.POWS
) AND
not exists (
SELECT 1 FROM TABLE2 WHERE DEPT_J='AA' AND CELL_J='BB' AND JONO_J=a.JONO
)
ORDER BY JONO
selectplayer 2006-12-25
  • 打赏
  • 举报
回复
SELECT DISTINCT A.POWS,A.JONO
FROM TMP_TABLE A
LEFT JOIN POWS_P B ON B.DEPT_P='AA' AND B.CELL_P='BB' AND B.POWS_P=A.POWS
LEFT JOIN JONO_J C ON C.DEPT_J='AA' AND C.CELL_J='BB' AND C.JONO_J=A.JONO
WHERE QTY>0 AND DEPT='AA' AND CELL='BB' AND B.B.POWS_P IS NULL AND C.JONO_J IS NULL
ORDER BY JONO
dulei115 2006-12-25
  • 打赏
  • 举报
回复
SELECT DISTINCT a.POWS, a.JONO
FROM TMP_TABLE a
left join (SELECT POWS_P FROM TABLE1 WHERE DEPT_P='AA' AND CELL_P='BB') b
on a.POWS = b.POWS
left join (SELECT JONO_J FROM TABLE2 WHERE DEPT_J='AA' AND CELL_J='BB') c
on a.JONO = c.JONO
WHERE a.QTY>0 AND a.DEPT='AA' AND a.CELL='BB' AND
b.POWS is null AND b.JONO is null
ORDER BY a.JONO
中国风 2006-12-25
  • 打赏
  • 举报
回复
not exists
sgucxc0 2006-12-25
  • 打赏
  • 举报
回复

in : = or

not in: != and

A in('A','B') means A='A' or A='B'

A not in('A','B') means A!='A' and A!='B'

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧