gpt4 book ai didi

mysql - SQL检查组中是否存在值

转载 作者:行者123 更新时间:2023-11-29 06:08:15 24 4
gpt4 key购买 nike

假设我有一张 channel 成员表

channelID  | accountID  | role
------------------------
1 | Bob | 100
2 | Bob | 100
1 | Dave | 101

和另一个 channel 表

channelID  | channelName     | type 
---------------------------------------
1 | Public Channel | public
2 | Private Channel | private

我该如何获取用户不在的公开 channel ?

我尝试这样做,但无法弄清楚如何对 channel 成员表进行分组,因为有两个 channel ID 为 1 的项目,所以当我执行查询时,如果我与用户 Dave 一起搜索,我会得到 channel 1,而它应该什么都不返回。我正在使用的查询:

Select ChatChannels.channelID, channelName, type
From ChatChannels
INNER JOIN ChatChannelMembers
On ChatChannels.channelID = ChatChannelMembers.channelID
Where AccountID = 'Dave'

最佳答案

这个有用吗?

SELECT (stuff)
FROM ChatChannels CC
WHERE CC.type = 'Public'
AND CC.channelID NOT IN (SELECT channelID FROM ChatChannelMembers WHERE AccountID = 'Dave')

关于mysql - SQL检查组中是否存在值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40028319/

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