mysql - 如果某个值连接到多个不需要的值,我如何确保不返回该值?

标签 mysql

我的问题措辞不完善,但基本上就是问题了。

我在“作品”表中有两列。一列是姓氏列表,另一列是人们居住的城市列表。

我不希望我的查询返回任何住在芝加哥的人。

我当前的代码是:

select lives.last_name 
from lives  
where lives.city <> "Chicago";

但有些人同时住在芝加哥和其他地方,比如迈阿密,他们仍然会出现。如何在不使用分组或计数功能的情况下只返回不住在芝加哥的人(还没有那么远)

谢谢

最佳答案

您可以将类似这样的东西与 NOT EXISTS 一起使用:

select a.last_name
from lives a
where not exists (select last_name
                   from lives b
                   where a.last_name = b.last_name
                       and city = 'chicago')

参见 SQL Fiddle with Demo

关于mysql - 如果某个值连接到多个不需要的值,我如何确保不返回该值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12694113/

相关文章:

php - 显示相似的查询 php mysql

SQL查询如何计算单行中的不同值

PHP Swiftlet mysqli 错误

mysql - 如何在 Yii2 中导入数据库、更新已更改的行、删除已删除的行

mysql - 通过连接表中的搜索标签进行搜索,按匹配数对结果进行排序并将大多数匹配项放在顶部 - 解决方案?

Java - 如何将从pdf文件中提取的单词集成到MYSQL中进行索引?

php - 如何在mysql中应用多词搜索

php - MYSQL SELECT 不返回某些结果

mysql - Sub-process/usr/bin/dpkg returned an error code (1) While Installing mysql

mysql - 在 WHERE MySQL 中更新多个值