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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?