SQL 查询查找没有订阅指定列表的用户(多对多)
有两个表,“users”和“lists”,以及一个将用户与列表相关的多对多“订阅”表(因此具有外键 user_id
和 list_id
) ,要查找所有没有任何订阅且具有特定 list_id
的用户(自然包括根本没有订阅的用户),单个 SQL 查询会怎样?
Having two tables, "users" and "lists", and a many-to-many "subscriptions" table relating users to lists (thus having foreign keys user_id
and list_id
), what would be a single SQL query to find all the users that don't have any subscription with a specific list_id
(naturally including the users that have no subscriptions at all)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是时候再次突破
不存在
了:Time to break out
not exists
again:我使用了
NOT IN
并且效果很好:Ruby on Rails 作用域作为奖励:
I used
NOT IN
and it works well:Ruby on Rails scopes as a bonus: