【发布时间】:2021-12-26 20:24:36
【问题描述】:
抱歉,发布图片的声誉不够。我有 3 个 SQL 表:
x1: {'a':1,2,3,4,5},
x2: {'c':1,1,1,2,2,3,3, 'd':1,3,5,1,3,1,1},
x3: {'b':1,3,5}
查询是:
select a from x1
where not exists (
select * from x3
where not exists (
select *
from x2
where x1.a = x2.c and x3.b=x2.d
)
)
以下查询的结果是“1”,但我不明白为获得该结果所采取的步骤。
在哪个子查询中返回什么?
【问题讨论】:
-
建议... 编辑您现有的帖子。您的数据表样本过于笼统。虽然我们可以给你解释,但最好有适当的上下文。如果与客户、订单、产品或类似的东西打交道,就这样做,而不是我们试图猜测这个人为什么会想要这样一个奇怪的查询。甚至可能是更好的做法和解释,包括为您的长期解决方案考虑的优化选项。顺便说一句,欢迎来到 S/O。