gpt4 book ai didi

mysql - 仅选择玩过特定游戏而不选择其他游戏的玩家

转载 作者:行者123 更新时间:2023-11-29 04:15:35 25 4
gpt4 key购买 nike

我对 SQL 相当陌生,并且对我正在尝试进行的查询感到困惑。我有一个与此类似的数据集

玩家

masterID   firstName   lastName
11111 Rob Caspian
22222 Bob Harper
33333 Jon Willow
44444 Ron Anderson
55555 Doug Blake

出场

masterID   gameName
11111 chess
11111 checkers
11111 chess
22222 chess
22222 chess
33333 monopoly
33333 monopoly
33333 monopoly
44444 chess
55555 risk
55555 chess

我想返回所有只玩过国际象棋而没有玩过其他游戏的玩家的名字和姓氏。所以它应该返回鲍勃·哈珀和罗恩·安德森。

SELECT player.firstName, player.lastName from player, appearances where player.masterID = appearances.masterID and appearances.gameName = "chess";

我有一个查询,它会返回所有玩过国际象棋的人,无论他们玩过什么其他游戏,但我不知道如何将其限制为只玩过国际象棋的玩家。它还应该只返回玩家姓名一次。感谢您的帮助!

最佳答案

您可以在查询末尾添加另一个过滤器来过滤掉其他游戏中出现的 MasterID:

SELECT player.firstName, player.lastName 
from player
join appearances on player.masterID = appearances.masterID
where appearances.gameName = 'chess'
and masterID not in(select masterID from Appearances where gameName != 'chess')

关于mysql - 仅选择玩过特定游戏而不选择其他游戏的玩家,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49283217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com