我想将此查询从not in
转换为not exists
select id, name, cat from posts where id not in (1, 100)
如何将其变为不存在
答案 0 :(得分:3)
如果您使用的是子查询,而不是硬编码的值列表,则无需转换此内容... not exists
。
您当前的查询很好。
答案 1 :(得分:3)
SELECT id,
NAME,
cat
FROM posts p
WHERE NOT EXISTS (SELECT 1
FROM (SELECT 1 AS col
FROM dual
UNION
SELECT 100 AS col
FROM dual) a
WHERE p.id = a.col);
您当前的查询是好的。但是如果您想使用NOT EXISTS,请尝试一下。