SQLite查询正在挂起

SQLite查询正在挂起,sqlite,Sqlite,所以我有一张名为运动员的桌子,它有五个领域:运动员ID、运动、金、银、铜。从这个表中,我们创建了一个名为most_played_sports的视图,其中包含了所有拥有500多名运动员的运动。目前的任务是利用上述观点找到不同的运动项目1和运动项目2,从而使运动项目1的奖牌数量严格低于运动项目2 我尝试的查询是: create view if not exists most_played_sports as select sport, sum(gold)+sum(silver)+sum(bronze

所以我有一张名为运动员的桌子,它有五个领域:运动员ID、运动、金、银、铜。从这个表中,我们创建了一个名为most_played_sports的视图,其中包含了所有拥有500多名运动员的运动。目前的任务是利用上述观点找到不同的运动项目1和运动项目2,从而使运动项目1的奖牌数量严格低于运动项目2

我尝试的查询是:

create view if not exists most_played_sports as select sport, sum(gold)+sum(silver)+sum(bronze) as medal_count from athletes
    group by sport
    having count(id) >= 500;

select distinct athletes.sport as sport_1, most_played_sports.sport as sport_2 
    from athletes cross join most_played_sports
    where sport_1 > sport_2 and 
    ((select medal_count from most_played_sports where sport=sport_1) < (select medal_count from most_played_sports where sport=sport_2));

第二个查询返回一些结果,但挂起。有没有比我所尝试的更好的方法来完成此任务?

我想您需要一个自加入:

select mps.sport as sport_1, mps2.sport as sport_2
from most_played_sports mps join
     most_played_sports mps2
     on mps.medal_count < mps2.medal_count;
这个问题并不意味着需要使用原始表格