MySQL中多表查询只提供了内连接,左外连接与右外连接
内连接INNER JOIN ON
外连接
在左外连接和右外连接时都会以一张表为基表,该表的内容会全部显示,然后加上两张表匹配的内容。如果基表的数据在另一张表没有记录。那么在相关联的结果集行中列显示为空值(NULL)。
左外连接=左表全部记录+相关联结果
右外连接=右表全部记录+相关联结果
全外连接=左表全部记录+右表全部记录+相关联结果=左外连接+右外连接-相关联结果(即去重复
我所建的表
1.左外连接(显示左表的全部记录)
(1)SQL语句
1 | SELECT student.*,choice.* |
(2)运行结果
2.右外连接(显示右表的全部记录)
(1)SQL语句
1 | SELECT student.*,choice.* |
(2)运行结果
3.全外连接(union)
(1)SQL语句
1 | SELECT student.*,choice.* |
(2)运行结果