select 两列的组合 sql, h2

select combination of two columns sql, h2

你好,我有这个 table:

在此 table 中,我想检查以下列的组合:'carrier' 和 'flight' 是否始终具有相同的来源。我该怎么做?

我试过这个:

select distinct(a.name)
from carriers c, flights f, airports a
where c.id = f.carrier and a.id = f.origin;

但我认为它没有提供我想知道的信息。非常感谢任何建议。

如果此查询 returns 任何行,那么您将确切地得到 carrier + flight 的哪个组合具有多个来源

select carrier, flight, count(distinct origin) as number_of_origins
from flights
group by carrier, flight
having count(distinct origin) >= 2;

此查询告诉您是否有任何 carrier + flight 组合与多个 origin:

相关
select carrier, flight
from flights
group by carrier, flight
having count(distinct origin) > 1