内部连接的反义词是什么?对于表PERSON (int PersonId, varchar PersoName, int AddrId),我想知道PERSON中包含坏AddrId的行,这些行在Address表中没有一行.

推荐答案

内部连接的反义词是什么?

外部联接,可以有三个选项:

  • 左边
  • 正当
  • 已满

This is a good visual representation of JOINs

我想知道有坏AddrId的人在地址表中没有一行.

Using 左边 JOIN/IS NULL

   SELECT p.*
     FROM PERSON p
左边 JOIN ADDRESS a ON a.addrid = p.addrid
    WHERE a.addrid IS NULL

使用NOT EXISTS

SELECT p.*
  FROM PERSON p
 WHERE NOT EXISTS(SELECT NULL
                    FROM ADDRESS a
                   WHERE a.addrid = p.addrid)

使用NOT IN

SELECT p.*
  FROM PERSON p
 WHERE p.addrid NOT IN (SELECT a.addrid
                          FROM ADDRESS a)

Database相关问答推荐

在使用FT.AGGREGATE聚合数据时,如何在Redis上解析ISO 8601时间?

避免数据库联接的两个查询替换

mongodb聚合从另一个查询中获取值

如何在华为Appcube中创建和使用对象(模型)?

使用python为组中的每个元素添加一个序列号

使用 cloud-spanner 进行本地开发

docker-compose mysql init sql 未执行

如何在 MS Access 中实现 SQL INTERSECT 和 MINUS 操作

在 Oracle 的 Check 语句中使用子查询

什么是 Scalar标量查询?

关系数据库如何在幕后工作?

如何使用 PHP 代码将图像上传到 MySQL 数据库

Slick 3.0 在数据库驱动程序级别是reactive/asynchronous的吗?对于哪些数据库?

如何将 SQL Server 数据库图表迁移到另一个数据库?

如何在 Windows 中将用户添加到 PostgreSQL?

使用 C3P0 的 JDBC 连接池

在 SQL Server 中实施审计表的建议?

有哪些不同类型的索引,每种索引的好处是什么?

Chrome 将其 SQLite 数据库保存到哪里?

如何知道mongodb使用的是哪个存储引擎?