sql怎么优化效率(sql如何调优化)

技术SQL该怎么优化这篇文章主要讲解了“SQL该怎么优化”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SQL该怎么优化”吧!一、避免进行null判断。 应尽量避免在 wh

本文主要讲解“如何优化SQL”。本文的解释简单明了,易学易懂。请跟随边肖的思路一起学习和学习“如何优化SQL”!

第一,避免无效判断。尽量避免判断where子句中字段的NULL值,否则会导致引擎放弃使用索引并扫描整个表。在这里,最好不要在数据库中留下null,尽量使用NOT NULL来填充数据库。注释、描述、注释等可以设置为NULL,最好不要使用NULL。不要误以为NULL不需要空格,比如char(100)类型。当字段建立时,空间是固定的。无论是否插入该值(包括空值),它都会占用100个字符的空间。如果是varchar这样的可变长度字段,null不会占用空间。您可以在num上设置默认值0,以确保表中的num列中没有null值。

第二,不要使用select *。如果使用select *,将会增加解析时间。此外,还会同时查询出不必要的数据,从而延长数据传输时间,消耗能源。例如,文本类型的字段通常用于存储内容复杂的内容。如果使用选择*,也会查询该字段。

第三,谨慎使用模糊查询。当模糊匹配以%开头时,列索引将无效。如果不以%开头,则列索引有效。

第四,不要使用列号。如果使用列号,会增加不必要的解析时间。

5.更喜欢使用UNION ALL,避免使用UNION。因为UNION将比较每个查询子集的记录,所以它通常比UNION ALL慢得多。一般来说,如果UNION ALL能够满足要求,一定要使用UNION ALL。还有一种情况,如果业务能够保证不会有重复记录。

6.避免在where语句或order by语句中计算索引字段。对索引列进行操作后,索引将无效。正确的方法是计算值,然后传入。

7.使用不存在代替不在如果查询语句使用不在,则在整个表中扫描内外表面,不使用索引;非extsts的子查询仍然可以用于表中的索引。

八、exist和in的区别在于对外部表和内部表进行散列,而exist是循环外部表,然后每次循环都查询内部表。因此,在中使用外表的索引,而在中使用内表的索引。如果查询的两个表大小相同,则in和exists之间几乎没有区别。如果两个表中的一个很小,另一个很大,则子查询表很大,存在,子查询表很小,有。

九.避免对索引列1执行以下操作。避免在索引列上使用“为空”和“不为空”。2.避免对索引列进行数据类型转换。(例如,字段的类型为String,传入时参数的类型为int)当对索引列使用上述操作时,索引将无效,从而导致全表扫描。十、复杂的操作可以考虑适当地拆分成几个步骤。有时,会有通过SQL语句实现复杂业务的例子。为了实现复杂的业务,嵌套了多级子查询。导致SQL性能问题。在这种情况下,考虑拆分SQL,通过多个SQL语句实现它,或者将程序可以做的部分工作交给程序。

感谢阅读。这就是“如何优化SQL”的内容。学习完这篇文章,相信你对如何优化SQL有了更深的理解,具体用法需要通过实践来验证。在这里,边肖将为您推送更多关于知识点的文章,敬请关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/150144.html

(1)

相关推荐

  • http和https的区别有哪些

    技术http和https的区别有哪些这篇文章将为大家详细讲解有关http和https的区别有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.了解http和https

    攻略 2021年11月12日
  • 邯郸学步的故事,邯郸学步故事150个字概括

    技术邯郸学步的故事,邯郸学步故事150个字概括邯郸学步常用来比喻一味地模仿别人,不仅没有学到本事,反而把原来的本事也弄丢了邯郸学步的故事。这个成语告诉我们,每个人都有自己的特点,如果不考虑到实际情况一味地去模仿别人,结果

    生活 2021年10月30日
  • 网页布局中CSS布局调试的有效方法是这样的

    技术网页布局中CSS布局调试的有效方法是这样的网页布局中CSS布局调试的有效方法是这样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。网页布局中CSS布局调

    攻略 2021年11月11日
  • mysql社区版和企业版的区别有哪些

    技术mysql社区版和企业版的区别有哪些这篇文章主要讲解了“mysql社区版和企业版的区别有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql社区版和企业版的区

    攻略 2021年12月2日
  • 浏览器内核分哪几类

    技术浏览器内核分哪几类本篇内容介绍了“浏览器内核分哪几类”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  浏览器最重要或

    攻略 2021年11月12日
  • ado如何调用存储过程

    技术ado如何调用存储过程小编给大家分享一下ado如何调用存储过程,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!你可以在安装ADO调用存储过程中。但它的功能没有Oracle或Microsoft那么多。而

    攻略 2021年12月4日