MySQL其他(执行顺序、where和having区别)
2020-06-11 11:10
45 查看
SQL和MySQL的区别:
SQL是一种语言就像Python,MySQL是一种数据软件叫做数据库就像Pytorch。数据软件还有其他的例如:oracle等,都是通过SQL语句进行查询的,数据库之间有细微差异(以后用到再说)。
MySQL语句的书写顺序为:
[code]select (输出) from (获取数据) where(过滤) group by (分组) having(过滤) order by (排序) limit(限定)
MySQL语句的执行顺序为:
[code]先from,在执行where,group by ,select, having,order by ,limit
使用group by时的聚类函数;
[code]count(*) 和 count(1) 是一样的 count(column) 不统计column中的为NULL的行数目 count(distinct column) 不统计column中重复行数目 sum() max() min() avg() group_concat() 字符串的结合
where和having的区别:
1. where是一个约束声明,使用Where约束来自数据库的数据,Where是在结果返回之前起作用的,Where中不能使用聚合函数。
2. Having是一个过滤声明,是在查询返回结果集以后对查询结果进行的过滤操作,在Having中可以使用聚合函数。在查询过程中聚合语句(sum,min,max,avg,count)要比having子句优先执行。而where子句在查询过程中执行优先级高于聚合语句。
相关文章推荐
- SQL Server 和 MySQL中 from where group by having order select 执行顺序
- mysql的汇总函数、where和having的区别、sql select 语句顺序
- mysql 中 where 、 group by 、having、order by 的执行顺序
- hive的strict模式;where,group by,having,order by同时使用的执行顺序
- Group By 和 Having, Where ,Order by语句的执行顺序:
- 正确理解MySQL中的where和having的区别
- mysql中having语句与where语句的用法与区别
- mysql中char和varchar,where和having的区别
- 当一个SQL语句同时出现了where,group by,having,order by的时候,执行顺序和编写顺序
- Oracle数据库-where, group by, having, order by语句的执行顺序
- MySQL执行计划extra中的using index 和 using where using index 的区别
- 查询语句中select from where group by having order by的执行顺序
- mysql中的where和having子句的区别
- mysql中过滤分组where和having的区别
- 查询语句中select from where group by having order by的执行顺序
- MySQL中where与having使用区别和方法
- 查询语句中select from where group by having order by的执行顺序
- mysql中having和where的区别
- SQL语句 where,group by,having,order by执行顺序
- Mysql中group by--having语句和where的区别