我遇到了一个问题,我无法在这个例子中解释这个问题: 所以有两列如:
X Y
A 2
A 1
A 3
B 3
C 2
A 1
D 2
B 1
B 3
C 1
A 1
D 3
D 1
现在我想只选择X中的数据,其中Y中的一个值是2。 所以我的输出应该如下:
X Y
A 2
A 1
A 3
C 2
A 1
D 2
C 1
A 1
D 3
D 1
因为X = B的Y = 2并不存在于主表中。 我的问题是这个操作的查询是什么?我曾尝试过CASE WHEN,但有些事情并没有为我解决。
答案 0 :(得分:1)
尝试
SELECT X FROM Table WHERE X IN (SELECT X FROM Table WHERE Y=2)
或尝试
SELECT t1.X FROM Table t1
INNER JOIN Table t2 ON t1.X = t2.X
WHERE t2.Y = 2
答案 1 :(得分:0)
尝试子查询:
SELECT X FROM table WHERE X IN (SELECT X FROM table WHERE Y = 2);