sql的几种join的方法
时间: 2024-06-01 13:04:53 浏览: 18
以下是SQL中几种JOIN的方法[^1]:
1. 内连接(INNER JOIN):返回两个表中匹配的行。
```sql
SELECT column_name(s) FROM table1 INNER JOIN table2 ON table1.column_name=table2.column_name;
```
2. 左连接(LEFT JOIN):返回左表中的所有行以及与右表匹配的行。
```sql
SELECT column_name(s) FROM table1 LEFT JOIN table2 ON table1.column_name=table2.column_name;
```
3. 右连接(RIGHT JOIN):返回右表中的所有行以及与左表匹配的行。
```sql
SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON table1.column_name=table2.column_name;
```
4. 全连接(FULL OUTER JOIN):返回左表和右表中的所有行。
```sql
SELECT column_name(s) FROM table1 FULL OUTER JOIN table2 ON table1.column_name=table2.column_name;
```
5. 自连接(SELF JOIN):将表与自身进行连接,用于在同一表中比较不同行之间的数据。
```sql
SELECT column_name(s) FROM table1 t1, table1 t2 WHERE t1.column_name = t2.column_name;
```
6. 交叉连接(CROSS JOIN):返回两个表的笛卡尔积,即所有可能的组合。
```sql
SELECT column_name(s) FROM table1 CROSS JOIN table2;
```
7. UNION操作符:将两个或多个SELECT语句的结果合并为一个结果集。
```sql
SELECT column_name(s) FROM table1 UNION SELECT column_name(s) FROM table2;
```