mysql字段和关键字(mySQL之关键字的执行优先级讲解)
类别:数据库 浏览量:1966
时间:2022-03-31 00:19:25 mysql字段和关键字
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之关键字的执行优先级讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
原文链接:https://blog.csdn.net/qq_33733970/article/details/77895329
您可能感兴趣
- mysql中group_concat
- mysql limit越大越慢(MySQL limit分页大偏移量慢的原因及优化方案)
- mysql有数据但筛选值为空(解决从集合运算到mysql的not like找不出NULL的问题)
- mysql什么是慢查询(MySQL慢查询的坑)
- mysqlexplain的用法(MySQL SHOW STATUS语句的使用)
- mysql怎么给查询权限(MySql设置指定用户数据库查看查询权限)
- mysqlgroupby用法(MySQL Group by的优化详解)
- mysql简单查询基本语句(详解MySQL 查询语句的执行过程)
- mysql 8.0.22 winx64安装配置方法图文教程(mysql 8.0.22 winx64安装配置方法图文教程)
- centos7怎么安装mysql(Centos7 mysql数据库安装及配置实现教程)
- mysql中命令大全(MySQL中ESCAPE关键字的用法详解)
- mysql深度分页问题(MySQL DDL 引发的同步延迟该如何解决)
- mysql的binlog几种模式(MySQL系列之redo log、undo log和binlog详解)
- navicat配置远程访问mysql(解决Navicat无法连接 VMware中Centos系统中的 MySQL服务器的问题)
- 怎样查看mysql的安装路径(MySQL中查看数据库安装路径的方法)
- mysql开启事务没有提交(MySQL 事务autocommit自动提交操作)
- 冯骥才 年意(冯骥才年意)
- ()
- 百事大吉蓝底 绿底手机高清壁纸(绿底手机高清壁纸)
- 蓝底证件照怎么制作 证件照换底色 换尺寸快速搞定(蓝底证件照怎么制作)
- 你喜欢足球吗 足球如何点亮世界的(足球如何点亮世界的)
- 不可分鸽是什么梗(不可分鸽是什么梗)
热门推荐
- mysql读写分离怎么实现的(详解MySQL主从复制及读写分离)
- 网站503错误
- dedecms更新后设置空白(织梦DedeCms上传的图片点击打开改为不新窗口打开)
- vue过滤器使用思路(vue 过滤器和自定义指令的使用)
- C#中ToDictionary,ToLookup
- Docker 部署单机版 Pulsar 和集群架构 Redis(开发神器)的方法(Docker 部署单机版 Pulsar 和集群架构 Redis开发神器的方法)
- python中list怎么用(详解python中list的使用)
- 将mysql中的表导出来(MySQL之导出整个及单个表数据的操作)
- sqlserver字符串截取填充(SQL Server实现split函数分割字符串功能及用法示例)
- php 面向对象与面向过程(php面向对象重点知识分享)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9