sql - 这个 WHERE 子句和这个 Join 有什么区别?

标签 sql postgresql join

这有什么区别:

选择 * 从表 1、表 2 WHERE table1.primary_id = table2.primary_id

还有这个:

选择 * 从表 1 FULL JOIN table2 ON table1.primary_id = table2.primary_id

最佳答案

第一个查询是隐式INNER JOIN,您应该始终使用显式语法。在这种情况下,查询将返回表 1 和表 2 中的记录。第二个查询将返回两个表的所有记录,如果没有匹配项则显示 NULL

关于sql - 这个 WHERE 子句和这个 Join 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9623225/

相关文章:

sql - 使用 group by 和聚合函数

mysql - 给定两个具有公共(public)字段 F 的表 A 和 B,我如何有效地找到 A 中不存在于 B 中的所有 F?

php - 通过 PHP 清理 PostgreSQL 中所有用户的输入

sql - 过滤postgresql查询结果

join - 如何在 Redis 中执行 "left join"?

java - SQL 数据库和 Java

mysql - 以下条件的 SQL 查询是什么?

linux - 安装 (PostgreSQL) 9.6.2 Sabayon linux?

mysql - 分组时对 JOIN 结果进行排序

SQLite:具有四个表的完全外连接