sql——多表查询

bxzl / 2023-09-05 / 原文

sql——多表查询

1、内连接

隐式内连接: select 字段列表 from 表1,表2 where 条件;

显式内连接 : select 字段列表 from 表1 [inner ] join 表2 on 连接条件;

2、外连接

左:SELECT 字段列表 FROM 表1 LEFT [ OUTER ] JOIN 表2 ON 条件 ... ;

右:SELECT 字段列表 FROM 表1 RIGHT [ OUTER ] JOIN 表2 ON 条件 ... ;

3、自连接

SELECT 字段列表 FROM 表A 别名A JOIN 表A 别名B ON 条件 ... ;

4、联合查询

SELECT 字段列表 FROM 表A ...

UNION [ ALL ]

SELECT 字段列表 FROM 表B ....;

5、子查询

SQL语句中嵌套SELECT语句,称为嵌套查询,又称子查询。

SELECT * FROM t1 WHERE column1 = ( SELECT column1 FROM t2 );

根据子查询结果不同,分为:

A. 标量子查询(子查询结果为单个值)

B. 列子查询(子查询结果为一列)

C. 行子查询(子查询结果为一行)

D. 表子查询(子查询结果为多行多列)

(1)标量子查询