mysql having 与 where

来源:互联网 发布:坚持做一件事 知乎 编辑:程序博客网 时间:2024/06/09 22:45

今天遇到的问题,以前都没思考过太多。
其实区别不是很大,但还是有的。
where 是mysql部分用于查询的过滤条件,也是我们最常用的。
having 是对查询结果进行过滤用的,也就是说只能用于 select后面出现的列名。
其它都一样,where语句怎么写,having语句就怎么写。

举个例子

SELECT count(*) FROM statis WHERE pc>100;

这个很简单,就是算pc列大于100的数据条数。如果这里把where 换成 having就会报错

20:52:04    SELECT count(*) as k FROM netkafem.agent_statis having pc>100   Error Code: 1054. Unknown column 'pc' in 'having clause'    0.001 sec

原因就是查询结果做为的表里没有一个叫pc的列。

再一个

SELECT uid,avg(pc)as apc FROM statis group by uid having apc>30;

这个看起来复杂一点,但还好就是找pc平均值大于30,按uid分组的数据。因为apc在查询的结果表里出现,所以这个地方可以用。

其实说到底,也真得是没多少区别。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 走丢了怎么办小班教案 走丢了怎么办小班社会 数学加减个十分不清怎么办 孩子b和d分不清怎么办 小孩b和d分不清怎么办 高一的数学不会怎么办 农村小孩到市里上学怎么办 和外国人打官司输了怎么办 碰见爱说你的领导怎么办 小孩脾气爆一句话就生气怎么办 小孩眼睛哭肿了怎么办 大人吵架吓到宝宝了怎么办 小孩晚上睡觉不踏实怎么办 二宝美籍大宝怎么办 小孩一洗澡就哭怎么办 孩子去外地上学学籍怎么办 非婚生子父亲想要孩子怎么办 非婚生子孩子父亲找不到了怎么办 3岁半宝宝认字怎么办 上课注意力不集中老是发呆怎么办 海绵宝宝吃了会怎么办 宝宝误吞李子核怎么办 24个月宝宝不愿意说话怎么办 孩子凉着肚子吐怎么办 教宝宝说话不会说怎么办 2岁宝宝语言退化怎么办 两周宝宝嗓子哑怎么办 幼儿园孩子上课爱说话老师怎么办 一岁宝宝不会爬怎么办 孩子说话不太清楚怎么办 十一个月宝宝不爱吃饭怎么办 14个月宝宝不爱吃饭怎么办 一岁宝宝喜欢哭怎么办 4岁儿童不会说话怎么办 8个月宝宝37.5度怎么办 8个月婴儿37.5度怎么办 5个月宝宝38度怎么办 5个月宝宝发烧怎么办 五个月小孩38度怎么办 宝宝3岁还不会说话 怎么办 两岁宝宝流口水厉害怎么办