MSSQLServer基础05(联合查询,连接查询)
时间: 2023-08-25 14:25:18 浏览: 39
联合查询和连接查询都是用于查询多个表的数据的。
1. 联合查询(UNION)
联合查询用于将两个或多个 SELECT 语句的结果集合并成一个结果集。需要注意的是,联合查询的 SELECT 语句必须具有相同的列数、列名和数据类型。例如,可以使用以下语句将两个表的数据合并:
```
SELECT column1, column2 FROM table1
UNION
SELECT column1, column2 FROM table2
```
2. 连接查询(JOIN)
连接查询用于将两个或多个表中的数据关联起来,以便在一个查询中检索相关数据。连接查询可以分为内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL JOIN)。
内连接只返回两个表中都有匹配数据的行,可以使用以下语句:
```
SELECT column1, column2 FROM table1
INNER JOIN table2 ON table1.column = table2.column
```
左连接返回左表中所有的行和右表中匹配的行,可以使用以下语句:
```
SELECT column1, column2 FROM table1
LEFT JOIN table2 ON table1.column = table2.column
```
右连接返回右表中所有的行和左表中匹配的行,可以使用以下语句:
```
SELECT column1, column2 FROM table1
RIGHT JOIN table2 ON table1.column = table2.column
```
全连接返回左表和右表中所有的行,可以使用以下语句:
```
SELECT column1, column2 FROM table1
FULL JOIN table2 ON table1.column = table2.column
```