mysql 查询操作
mysql 查询操作
初始化环境
创建数据库,
|
|
创建用户表
|
|
创建部门表
|
|
查看结果
|
|
单表查询
条件查询(where)
|
|
查询排序 (order by)
|
|
限制结果数量 (limit)
|
|
分组(group by) 与聚合函数
|
|
分组条件 (having)
|
|
联表查询
为了展示 联表查询 的差异, 增加 depart
字段产生数据差。
|
|
LEFT JOIN .. ON
与 RIGHT JOIN .. ON
left/right join .. on
本质上是一样的, 将多张表 联结 成一张 虚拟表 进行数据查询。
left / right
用于相对位置上的 主表 。 主表将展示全部数据, 从表 多的数据不展示 , 少的数据以 NULL站位on
指定 **联结 ** 条件。
|
|
|
|
交集 inner join .. on
inner join
展示交集, 双方都有的。
|
|
并集 full join .. on
展示所有数据
|
|
注意: mysql 5.7 中不支持
full join .. on
。 可以使用union + left/right join
实现
|
|
笛卡尔积 self jion
自联结
自联结没有关键字, 将多张表以 逗号 ,
分隔, 结果是一张 笛卡尔积 的超级大表。
|
|
联表查询选择字段
查询部分字段时, 需要使用 table1.columnA, table2.columnB
的方式 显示 指定要查明的字段。
|
|
联表查询条件过滤
联表就是产生一张虚拟表, 对虚拟表的所有 条件、分组 都与普通表一样。
|
|
查询结果组合 Union
union 不是联结原始表, 而是将多个 结果 组合成一张表。
- 要求 多个查询结果的 字段数 一样
- 不要求 多个查询结果字段对应的类型一样。
|
|
- 原文链接:https://typonotes.com/posts/2021/12/07/mysql-select-operation/
- 本文为原创文章,转载注明出处。
- 欢迎 扫码关注公众号
Go与云原生
或 订阅网站 https://typonotes.com/ 。 - 第一时间看后续精彩文章。觉得好的话,请猛击文章右下角「在看」,感谢支持。