过滤选择查询以仅返回在连接表中没有对应记录的记录

发布于 2024-11-07 17:44:51 字数 366 浏览 0 评论 0原文

TABLE GROUP
group_id | user_id
   1          1

TABLE USERS
user_id | fullname
   1      Juan dela Cruz 
   2      Maria 

我使用 foreach 循环在表 users 中显示结果,但我想要的是 当我的表 group 中的 user_id 存在时,我不想再显示它。我怎样才能做到这一点?我知道我需要交叉表,但不知道从哪里开始,我也在考虑使用 INNER JOIN 但它只会将相同的 user_id 合并到 1 中。

TABLE GROUP
group_id | user_id
   1          1

TABLE USERS
user_id | fullname
   1      Juan dela Cruz 
   2      Maria 

I’m displaying the result in my table users using a foreach loop but what I want is
when the user_id in my table group exists I don’t want it to display anymore. How can i achieve that? I know that I need to cross table but don’t know where to start also I’m thinking using an INNER JOIN but it will just merge the same user_id into 1.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

以酷 2024-11-14 17:44:52
SELECT * FROM users WHERE user_id NOT IN(SELECT user_id FROM group)
SELECT * FROM users WHERE user_id NOT IN(SELECT user_id FROM group)
春夜浅 2024-11-14 17:44:52
select distinct u.user_id, u.fullname
from USERS u
left outer join GROUP g on u.user_id = g.user_id
where g.user_id is null
select distinct u.user_id, u.fullname
from USERS u
left outer join GROUP g on u.user_id = g.user_id
where g.user_id is null
浴红衣 2024-11-14 17:44:52

如果我理解正确的话:

SELECT * FROM users WHERE user_id <> <ID>

If i understand you right:

SELECT * FROM users WHERE user_id <> <ID>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文