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/ 。 - 第一时间看后续精彩文章。觉得好的话,请猛击文章右下角「在看」,感谢支持。


