SQL空IN语句

时间:2012-09-25 19:42:00

标签: sql

如果我写下面的查询会发生什么:

SELECT *
FROM table
WHERE name IN (select name from someotherTable where id = 3)

并且内部查询(在IN语句内)不返回结果集

外部会自动评估为True还是False?

2 个答案:

答案 0 :(得分:7)

这将返回一个空集。

答案 1 :(得分:1)

让我们测试一下;

CREATE TABLE TableA ( id INT );
INSERT INTO TableA VALUES (1);
CREATE TABLE TableB ( id INT );
SELECT * FROM TableA
  WHERE id IN (SELECT * FROM TableB);

(empty set)