MySQL:查找另一个表中不存在的记录

标签 mysql

我有 2 个 MySQL 表:

id   customer  ipAddress
--------------------------
1    acme      10.10.10.10
2    target    33.33.33.33

number   ip
--------------------
54321    10.10.10.10
41247    33.33.33.33
62068    77.77.77.77

在这种情况下,77.77.77.77 在表 1 中没有条目。

如何获取表 2 中所有在表 1 中没有 ipAddress 的数字?

我试过:

select ip from table1,table2 where ip not in(select ipAddress from table1);

但我得到一个空集。

最佳答案

我用 left joinwhere is null 得到了正确答案 (77.77.77.77):

select ip from table2 left join table1 on (ip = ipAddress) where ipAddress is null;

关于MySQL:查找另一个表中不存在的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28508934/

相关文章:

mysql - 无需任何形式的备份即可回滚对 MySQL 数据库的更改

html - 在发送到 sql 服务器之前从 html 输入元素中提取值

mysql - 锁是否通过复制传播?

php - 在输入 mysql 之前删除 Word 格式,以获得 JSON 输出

mysql - 如何获取给定月份的有效租金详细信息

php - MySQL 在给定时间段内找到前 x%

mysql - MySQL查询剥离

php - 在不使用表单/字段的情况下将值从 View 传递到 Controller

java - 如何选择包含长文本或短文本的列,如果长度 > 100,则剪切文本,如果 < 100,则添加空格以使其精确为 100?

php - OOP 问题停止 PHP 运行和 MySQL 数据数组检索问题