首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检索表中不存在的行

检索表中不存在的行
EN

Stack Overflow用户
提问于 2015-08-15 18:45:46
回答 2查看 41关注 0票数 0

我有两张桌子:

健身房(ID*,名称,类型) gym_unlocked(ID*、裸子植物标识*、userID*)

我正在尝试执行一个SQL查询,该查询只在gym_unlocked表中不存在时从健身房表中检索行。

例如,如果我在健身房的表中有1行,其名称为"FirstGym“,类型为”强度“,如果该健身房的ID与gym_unlocked表中的任何一行不匹配,假设userID为2,那么它将从健身房的表中检索该行。

到目前为止,我已经:

代码语言:javascript
复制
SELECT        ID,name,type
FROM            gym
WHERE gym.id NOT IN gym_unlocked.gymID AND gym_unlocked.userID = 2

但是它不起作用,所以他们有没有办法让我达到我想要做的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-15 18:54:11

我不太熟悉mysql语法,但应该是这样的:

代码语言:javascript
复制
SELECT ID,name,type
FROM gym
WHERE gym.id NOT IN 
(SELECT gym_unlocked.gymID
FROM gym_unlocked
WHERE gym_unlocked.userID = 2)

我想您正在收到关于gym_unlocked表的错误。为了与该表建立连接,需要对此表使用左联接或使用SUBSELECT。

票数 2
EN

Stack Overflow用户

发布于 2015-08-15 18:53:59

代码语言:javascript
复制
SELECT g.ID, g.name, g.type
FROM  gym g
left join gym_unlocked u on g.id = u.gymID
                        AND u.userID = 2
WHERE u.gymID is null 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32028117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档