MySQL数据库:第八章:连接查询

回退至Mysql数据库理论与实战

#进阶7:连接查询

理解:查询语句中涉及到的字段来自于多张表,将这种查询称为多表连接查询
语法:select 查询列表 from 表名1,表名2;
引入案例:
select name,boyname from beauty,boys;
select name,boyname from beauty,boys where boyfriend_id = boys.id;
笛卡尔乘积:
现象:表1和表2连接,结果为两表的完全连接结果,数据不正确
表1m行,表2 n行,结果为:m*n 行
产生原因:没有有效的连接条件
解决办法:添加两个表的连接条件
★ 找到两个表的关联关系。两个表的关联列的意思肯定是一样,但名称不一定一样!一般通过主外键列进行关联。
连接查询的分类 ★:
sql92语法:
内连接
等值连接
非等值连接
自连接
外连接(支持的不太好,mysql压根不支持)
sql99语法:
内连接
等值连接
非等值连接
自连接
外连接
左外连接
右外连接
全外连接(mysql不支持)

#---------------------------------Sql92语法--------------------------------
#内连接
#一、等值连接

语法:
select 查询列表
from 表名1 别名1,表名2 别名2
where 别名1.关联列 = 别名2.关联列
and 筛选条件
group by 分组字段
having 分组后的筛选条件
order by 排序;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44519496/article/details/120684182

posted @ 2023-08-31 16:15  忘川信使  阅读(25)  评论(0编辑  收藏  举报