加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

Java架构师条记丨常见的错误 SQL 用法,你中招了吗?

发布时间:2019-07-27 01:59:01 所属栏目:移动互联 来源:Java架构师笔记
导读:1、LIMIT 语句 分页查询是最常用的场景之一,但也凡是也是最轻易出题目的处所。好比对付下面简朴的语句,一样平常 DBA 想到的步伐是在 type, name, create_time 字段上加组合索引。这样前提排序都能有用的操作到索引,机能敏捷晋升。 好吧,也许90%以上的 DBA

再来看下面这个已经起源优化过的例子(左毗连中的主表优先浸染查询前提):

Java架构师条记丨常见的错误 SQL 用法,你中招了吗?

那么该语句还存在其余题目吗?不丢脸出子查询 c 是全表聚合查询,在表数目出格大的环境下会导致整个语句的机能降落。

着实对付子查询 c,左毗连最后功效集只体谅能和主表 resourceid 能匹配的数据。因此我们可以重写语句如下,执行时刻从原本的2秒降落到2毫秒。

Java架构师条记丨常见的错误 SQL 用法,你中招了吗?

可是子查询 a 在我们的SQL语句中呈现了多次。这种写法不只存在特另外开销,还使得整个语句显的繁杂。行使 WITH 语句再次重写:

Java架构师条记丨常见的错误 SQL 用法,你中招了吗?

总结

数据库编译器发生执行打算,抉择着SQL的现实执行方法。可是编译器只是极力处事,全部数据库的编译器都不是精细绝伦的。

上述提到的大都场景,在其余数据库中也存在机能题目。相识数据库编译器的特征,才气避规其坏处,写出高机能的SQL语句。

措施员在计划数据模子以及编写SQL语句时,要把算法的头脑或意识带进来。

编写伟大SQL语句要养成行使 WITH 语句的风俗。简捷且思绪清楚的SQL语句也能减小数据库的承担 。

【编辑保举】

  1. 措施狗必备:5个成果富厚的交互式Javascript库
  2. VS Code 的 Java 七月更新,新的重构特征
  3. Java类加载及工具建设进程详解
  4. 资深措施员经典总结:MySQL的并发节制道理
  5. 只需5分钟,把握9个风流又简捷的JavaScript能力
【责任编辑:华轩 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读