0

通过使用 SQlite,我想获取在特定列中仅显示一个不同值的所有行。如下表所示:

A B
1 2
2 1
3 2
4 3
5 1
6 1
7 2
8 4
9 2

在这里,我只想获得第 Nr 行。4 和 8,因为值(3 和 4)在整个列中仅出现一次。

4

1 回答 1

1

您可以使用这样的查询:

SELECT *
FROM mytable
WHERE B IN (SELECT B FROM mytable GROUP BY B HAVING COUNT(DISTINCT A)=1)

在此处查看小提琴。

子查询将返回仅存在一次的所有 B 值(您也可以HAVING COUNT(*)=1在这种情况下使用),外部查询将返回子查询返回 B 的所有行。

于 2013-06-24T14:24:23.420 回答