mysql查找未发帖的用户

标签 mysql

我有一个包含 id 列的 users 表和一个包含 user_id 列的 posts 表专栏。

我正在查找所有从未发布过的用户。

伪代码:

SELECT u.* FROM users u
JOIN posts p 
WHERE u.id IS NEVER IN p.user_id

我认为我在这里遗漏了一些简单的东西并且找不到答案。感谢您的任何帮助,您可以提供。

最佳答案

使用LEFT JOIN:

SELECT u.* 
FROM users u
LEFT JOIN posts p ON u.id = p.user_id 
WHERE p.user_id is null;

LEFT JOIN 将为您提供那些用户,即使他们没有发布任何帖子,这些用户的 p.user_id 将等于 null。因此,添加 WHERE p.user_id is null 将为您提供那些从未发布过任何帖子的用户。

关于mysql查找未发帖的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46381984/

相关文章:

mysql - 将数据库中的javascript替换为php mysql

mysql - SQL JOIN 仅连接到一行

mysql - SQL GROUP BY - 一列中有多个结果?

Mysql主数据库使用情况

mysql - 如何为docker mysql实例的root用户重新分配 'host'

java - 在java中更新SQL

php - SQL 数据库或文件系统中的照片 (2012)

php - 从php中的字符串中删除特殊符号

mysql - SQL if not null update

javascript - 设置文本区域中各行的样式