• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    mySQL之关键字的执行优先级讲解

    如下所示:

    from 表

    where 条件

    group by 字段

    形成虚拟的表及字段,聚合及字段添加

    having 筛选数据

    distinct 去重

    order by 字段 asc,desc

    limit 限制条数

    select 罗列记录

    先根据where 约束条件 将数据从表中加载到内存,所以where的条件作用在数据之前,然后根据字段进行分组,在内存中形成一张虚拟的表包含字段,

    如果此时有聚合函数则先执行聚合函数,并将聚合函数字段也加到虚拟的表中,接着进行having记录筛选,筛选完成后对数据进行去重,排序,限制等操作后进行显示。

    补充知识:mysql where条件and的执行顺序从左到右

    之前做功能,把三个条件通过md5加密之后得到一个字符串的字段unique_key,把这个字段设置为唯一索引,希望查询的时候通过这个唯一索引来查询,不用分三个条件分别进行查询了,同时使用了replace方法保证相同的三个条件下更新数据的话数据库只会有一条记录。

    后来发现列表查询必须要开放这三个条件,于是只好将这个unique_key放到where条件and 的最左边,通过unique_key筛选出来效率也不会差。

    mysql的优化方方面面,写的时候要多考虑了。

    以上这篇mySQL之关键字的执行优先级讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • MySQL如何基于Explain关键字优化索引功能
    • mysql执行计划id为空(UNION关键字)详解
    • jq.ajax+php+mysql实现关键字模糊查询(示例讲解)
    • MySQL关键字Distinct的详细介绍
    • MySql带OR关键字的多条件查询语句
    上一篇:mysql实现从导出数据的sql文件中只导入指定的一个表
    下一篇:解决mysql 组合AND和OR带来的问题
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    mySQL之关键字的执行优先级讲解 mySQL,之,关键字,的,执行,