AIDE技术官网
AIDEZY.COM

Mysql指令having和where的区别

Mysql指令having和where的区别 Mysql数据库教程 第1张

 

Mysql指令having和where的区别 Mysql数据库教程 第2张

mysql指令 having和where的区别

首先having 和 where 都是mysql的条件限制。

 

我们先来看一个例子:

Mysql指令having和where的区别 Mysql数据库教程 第3张

select max(content) as zuida from msg having zuida>10;

这个就能正确运行

Mysql指令having和where的区别 Mysql数据库教程 第4张

select max(content) as zuida from msg where zuida>10;

这个就不能正确运行

 

那么为什么会这样呢?就一个单词只差因为:where是判断数据从磁盘读入内存的时候,having是判断分组统计之前的所有条件。

 

 

那么总结出来就可以分为3点:

第一点:

where是判断数据从磁盘读入内存的时候

having是判断分组统计之前的所有条件

第二点:

having子句中可以使用字段别名,而where不能使用

第三点:

having能够使用统计函数,但是where不能使用

 

先分组,再判断

 

搜一下

海报生成 赞(2) 打赏

来都来了!评论一下呗! 抢沙发

  • QQ (自动获取名称头像等信息|选填)
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址 (选填)

登录

忘记密码 ?

切换登录

注册