提问者:小点点

当使用MySQL查看特定列是否在另一列中有两个唯一值时,如何从表中选择*?[副本]


我有MySQL查询,我正在尝试运行,但我不知道如何接近它。我使用的示例数据是

TABLE called Stop
COLUMNS of ID, STATION_ID, NAME_ID
ROWS OF DATA (1, 5, 4), (1, 6, 6), (1, 3, 2), (2, 9, 4), (3, 10, 20), (1, 12, 15), (4, 1, 3)

我试图从Stop表中查询一个特定ID存在的两个STOPIN_ID,其中Stop ID必须同时具有两个STOPIN_ID,否则它不会返回任何内容

我让从stop WHERE station_ID=5 AND station_ID=6中选择id,但这不起作用。我需要什么样的查询参数来完成这一点?


共1个答案

匿名用户

您似乎需要聚合和having子句:

select id
from stop
where station_id in (5, 6)
group by id
having count(*) = 2

如果存在重复的(id,station_id),则需要count(distinct station_id)而不是count(*)