sql左右连接和内外链接
时间: 2023-11-29 12:06:54 浏览: 123
SQL之左连接、右连接和全连接.doc
SQL中的连接(Join)用于将两个或多个表中的数据关联起来,以便于查询数据。常见的连接类型包括左连接、右连接、内连接和外连接。
1. 左连接(Left Join):左连接返回左表中所有的数据记录,以及右表中所有和左表匹配的数据记录。如果右表中没有匹配的数据记录,则返回 NULL。左连接使用 "LEFT JOIN" 或 "LEFT OUTER JOIN" 关键字实现。
2. 右连接(Right Join):右连接返回右表中所有的数据记录,以及左表中所有和右表匹配的数据记录。如果左表中没有匹配的数据记录,则返回 NULL。右连接使用 "RIGHT JOIN" 或 "RIGHT OUTER JOIN" 关键字实现。
3. 内连接(Inner Join):内连接只返回左右两表中都匹配的数据记录。内连接使用 "INNER JOIN" 或 "JOIN" 关键字实现。
4. 外连接(Outer Join):外连接分为左外连接和右外连接,左外连接返回左表中所有的数据记录,以及右表中所有和左表匹配的数据记录,如果右表中没有匹配的数据记录,则返回 NULL;右外连接返回右表中所有的数据记录,以及左表中所有和右表匹配的数据记录,如果左表中没有匹配的数据记录,则返回 NULL。外连接使用 "FULL OUTER JOIN" 或 "FULL JOIN" 关键字实现。
示例代码:
```sql
-- 左连接
SELECT *
FROM table1
LEFT JOIN table2
ON table1.column = table2.column;
-- 右连接
SELECT *
FROM table1
RIGHT JOIN table2
ON table1.column = table2.column;
-- 内连接
SELECT *
FROM table1
INNER JOIN table2
ON table1.column = table2.column;
-- 左外连接
SELECT *
FROM table1
LEFT OUTER JOIN table2
ON table1.column = table2.column;
-- 右外连接
SELECT *
FROM table1
RIGHT OUTER JOIN table2
ON table1.column = table2.column;
-- 全外连接
SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column;
```
阅读全文