IN
我想选择在where 子句中找不到的所有行
CREATE TABLE actions
(
id integer
);
INSERT INTO actions (id)
VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9);
SELECT * FROM actions
WHERE id in (1,2,3, 12, 14)
ORDER BY id DESC
在此示例中,我只想获取 12 和 14 值,因为它们列在 where 子句中,但不存在于表中。
子句中的值列表
WHERE IN
不是一个集合。您必须将其转换为行集(子查询、CTE、临时表)。
例如: