我的编程空间,编程开发者的网络收藏夹
学习永远不晚

SQL开发规范中的有哪些误区

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

SQL开发规范中的有哪些误区

这篇文章主要介绍“SQL开发规范中的有哪些误区”,在日常操作中,相信很多人在SQL开发规范中的有哪些误区问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SQL开发规范中的有哪些误区”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1、假设一个表同时有两个索引,idx_int_c1,idx_varchar_c2在:select*from tb where c1=100000 or c2='zhishutang';这个SQL会用到哪个索引?为什么?

大多数人都会选择第一个。其实选择任何一个索引都是错误的。大多数企业都会基于CPU,或者说基于成本优化。如果按照c1来算,两个条件同时满足,它会选择靠前的;如果只能满足一个,它会选择最优的,这是成本优化最核心的原理,选择最适合的状态。从成本优化的角度,应该谁处于空闲,谁就去工作。不一定是运程最快,最重要的是合适。

2、还有,如何判断SQL运行的时候,哪个最好。

SQL开发规范中的有哪些误区

比如上图中:一个是不加limit,一个是加了limit,如果整体时间都在1S以下,哪一个最好?很多人会说,肯定是加了limit的好。但是,如何证明?

在优化之前,在终端上做下状态刷新,分别执行这两个SQL。然后对比数据。比如第一个SQL之前是1个Key,后来读了17次。而第二个SQL是从1个Key开始读了4次。这说明第二个动作少,效果更好。所以,判断一个SQL好还是坏,是可以量化的。

3、另外是关于delete优化的问题。之前,有一个人求助,说一个delete语句执行了2个多小时了,还没执行完,能不能把这个SQL回滚?答案是不能,如果你直接回滚,会死得更惨。

评价一个SQL能不能回滚,或者说进行到什么程度?大家都有同样一个感受是,有一个进度条该多好。但事实是,SQL没有。有很多人很暴力,遇到这种情况会直接重启。不重启会卡死,因为它阻塞了后面的任务,SQL不能查询。

笔者建议不要暴力重启,先执行一个“show engine innodb status\G”语句,这样能看到执行时间。如果没有运行状态,就可以Kill掉。

到此,关于“SQL开发规范中的有哪些误区”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

SQL开发规范中的有哪些误区

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mongodb开发规范有哪些

1. 命名规范:- 集合(Collection)名应使用小写字母和下划线组成,如:users, orders。- 字段(Field)名应使用小写字母和下划线组成,如:first_name, last_name。- 使用有意义的名称,避免使用
2023-09-04

python开发规范有哪些

Python开发规范通常包括以下几个方面:1. 命名规范:使用有意义的变量、函数和类名,采用下划线命名法(例如:my_variable)或驼峰命名法(例如:myVariable)。2. 缩进与空格:使用4个空格进行缩进,不要使用制表符。运算
2023-09-22

PHP开发内部规范有哪些

本篇内容介绍了“PHP开发内部规范有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 一、P
2023-06-25

web前端开发中的规范要求有哪些

这篇文章主要介绍了web前端开发中的规范要求有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇web前端开发中的规范要求有哪些文章都会有所收获,下面我们一起来看看吧。web前端开发中,适当的规范和标准绝不是消
2023-07-04

Java开发常用规范技巧有哪些

本篇内容主要讲解“Java开发常用规范技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java开发常用规范技巧有哪些”吧!1、Object 的 equals 方法容易抛空指针异常。从源码
2023-06-02

Java开发中的规则有哪些

今天就跟大家聊聊有关Java开发中的规则有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、关键字&标识符1、关键字:被Java语言赋予了特殊含义,用作专门用途的字符串(单词);
2023-05-31

Python中的编码规范有哪些

这篇“Python中的编码规范有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python中的编码规范有哪些”文章吧。编
2023-07-06

编程热搜

目录