我正在对 MySQL 上的sakila 数据库8.0.17
运行此查询:
select * from film _1 where (
exists (
select * from film_actor where (
select * from (
select film_id=_1.film_id and actor_id=1
) _2
)
)
);
这给出了0
结果。但是如果我运行这个:
select * from film _1 where (
exists (
select * from film_actor where (
select film_id=_1.film_id and actor_id=1
)
)
);
我得到了19
结果,这是意料之中的。
基本上我用这个where
条件包裹起来select * from
,突然得到错误的结果。
据我了解,用任何表值包装select * from
应该给出相同的结果。
我创造了这个小提琴。