MYSQL 从两个表中选择,但第二个表并不总是与第一个表有关系

标签 mysql join

所以我有两个表,一个包含用户信息 (Users),另一个包含不显示哪些用户的信息 (Settings)。因此,我想执行一个查询,以显示 users 表中的所有用户,settings 中列出的用户除外。提前致谢。

用户

| id | name  |
===============
| 1  | adam  |  
| 2  | alex  |  
| 3  | andrew|

设置

| id | name | value | user_id |
===============================  
| 1  | hide | 1     | 1       | 

我希望结果是:

| id | name  | 
==============
| 1  | alex  |  
| 2  | andrew| 

最佳答案

类似于:

SELECT * FROM users WHERE id NOT IN (SELECT user_id FROM settings WHERE name="hide");

只会从用户表中获取不在设置名称等于“隐藏”的设置表中的用户

关于MYSQL 从两个表中选择,但第二个表并不总是与第一个表有关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12862360/

相关文章:

sql - 使用联接删除 sybase 中的行

mySQL - 为每个帖子选择 2 个最新评论

mysql - 无法在 MySQL 中上传图像文件

php - 编码 PHP MySQL

mysql - 从表中选择行加上与一个查询中所选行相关的行

mysql - 比较MySQL JOIN 子句中的varchar 和integer

mysql - 快速获取mysql记录数的方法

java - 在 Glassfish 中捕获 MySQL 异常

PHP 脚本无法正确找到 MySQL 表行

mysql加入同一张表不重复