如果我编写以下查询会发生什么:
SELECT *
FROM table
WHERE name IN (select name from someotherTable where id = 3)并且inner查询(在IN语句内)不返回任何结果集
外部where是否会自动计算为True或False?
发布于 2012-09-26 03:42:50
这将返回一个空集。
发布于 2012-09-26 03:47:14
让我们来测试一下;
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)https://stackoverflow.com/questions/12589961
复制相似问题