![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 59
伪菜鸟
这个作者很懒,什么都没留下…
展开
-
存储过程练习
存储过程原创 2022-07-13 10:36:17 · 336 阅读 · 0 评论 -
数据库事务
事务原创 2022-06-05 10:29:35 · 44 阅读 · 0 评论 -
数据库范式
范式都包括哪些目前关系型数据库有六种常见范式,按照范式级别,从低到高分别是:第一范式(1NF)、第二范式 (2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。键和相关属性的概念以两个表为例:球员表:球员编号、姓名、身份证号、年龄、球队编号;球队表:球队编号、主教练、球队所在地;超键 :对于球员表来说,超键就是包括球员编号或者身份证号的任意组合,...原创 2022-04-17 19:43:12 · 1604 阅读 · 0 评论 -
覆盖索引、前缀索引和索引下推
什么是覆盖索引?理解方式一:索引是高效找到行的一个方法,但是一般数据库也能使用索引找到一个列的数据,因此它不必读取整个行。毕竟索引叶子节点存储了它们索引的数据;当能通过读取索引就可以得到想要的数据,那就不需要读取行了。一个索引包含了满足查询结果的数据就叫做覆盖索引;理解方式二:非聚簇复合索引的一种形式,它包括在查询里的SELECT、JOIN和WHERE子句用到的所有列(即建索引的字段正好是覆盖查询条件中所涉及的字段);简单来说就是,索引列+主键 包...原创 2022-04-07 21:31:01 · 294 阅读 · 0 评论 -
子查询和排序优化
子查询优化子查询可以一次性完成很多逻辑上需要多个步骤才能完成的SQL操作;但是,子查询的执行效率不高。原因如下:执行子查询时,MySQL需要为内层查询语句的执行结果建立一个临时表 ,外层查询语句从临时表中查询记录。查询完毕后,再撤销这些临时表 。这样会消耗过多的CPU和IO资源,产生大量的慢查询; 子查询的结果集存储的临时表,不论是内存临时表还是磁盘临时表都不会存在索引 ,所以查询性能会受到一定的影响;在MySQL中,可以使用连接(JOIN)查询来替代子查询。连...原创 2022-04-01 22:32:12 · 597 阅读 · 0 评论 -
订单数据表SQL语句练习
1、建立相关的表# 职工表CREATE TABLE `employee` ( `houseId` VARCHAR (36), `empId` VARCHAR (36), `salary` DOUBLE) ;# 供应商表CREATE TABLE `supplier` ( `supplierId` VARCHAR (36), `supplierName` VARCHAR (36), `address` VARCHAR (36)) ;# 订单表CREATE ..原创 2022-03-28 22:30:00 · 4851 阅读 · 0 评论 -
关联查询优化总结
保证被驱动表的JOIN字段已经创建了索引 需要JOIN 的字段,数据类型保持绝对一致。 LEFT JOIN 时,选择小表作为驱动表,大表作为被驱动表 。减少外层循环的次数。 INNER JOIN 时,MySQL会自动将 小结果集的表选为驱动表 。选择相信MySQL优化策略。 能够直接多表关联的尽量直接关联,不用子查询。(减少查询的趟数) 不建议使用子查询,建议将子查询SQL拆开结合程序多次查询,或使用 JOIN 来代替子查询。补充:什么是“ 小表”?在决定哪个表做驱...原创 2022-03-28 21:18:05 · 1102 阅读 · 0 评论