欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

PostgreSQL FULL JOIN 多表联合查询

程序员文章站 2022-06-07 16:15:13
...
只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。

FULL JOIN 关键字语法
SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2
ON table_name1.column_name=table_name2.column_name
注释:在某些中, FULL JOIN 称为 FULL OUTER JOIN。

postgres=#
postgres=# CREATE TABLE t1 (
postgres(# num int,
postgres(# name varchar(10)
postgres(# );
CREATE TABLE
postgres=#
postgres=# insert into t1 values(1,'a');
INSERT 0 1
postgres=# insert into t1 values(2,'b');
INSERT 0 1
postgres=# insert into t1 values(3,'c');
INSERT 0 1
postgres=#
postgres=# CREATE TABLE t2 (
postgres(# num int,
postgres(# name varchar(10)
postgres(# );
CREATE TABLE
postgres=#
postgres=# insert into t2 values(1,'xxx');
INSERT 0 1
postgres=# insert into t2 values(3,'yyy');
INSERT 0 1
postgres=# insert into t2 values(5,'zzz');
INSERT 0 1
postgres=#
postgres=# SELECT * FROM t1 FULL JOIN t2 ON t1.num = t2.num;
num | name | num | name
-----+------+-----+------
1 | a | 1 | xxx
2 | b | |
3 | c | 3 | yyy
| | 5 | zzz