没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Having
这个是用在聚合函数的用法。当我们在用聚合函数的时候,一
般都要用到 GROUP BY 先进行分组,然后再进行聚合函数的运算。
运算完后就要用到 HAVING 的用法了,就是进行判断了,例如说判
断聚合函数的值是否大于某一个值等等。
select customer_name,sum(balance)
from balance
group by customer_name
having balance>200; yc_rpt_getnew
order by 、group by 、having 的用法区别
order by 从英文里理解就是行的排序方式,默认的为升序。 order
by 后面必须列出排序的字段名,可以是多个字段名。
group by 从英文里理解就是分组。必须有“聚合函数”来配合才能使
用,使用时至少需要一个分组标志字段。
什么是“聚合函数”?
像 sum()、count()、avg()等都是“聚合函数”
使用 group by 的目的就是要将数据分类汇总。
一般如:
select 单位名称,count(职工 id),sum(职工工资) form [某表]
1
group by 单位名称
这样的运行结果就是以“单位名称”为分类标志统计各单位的职工人数
和工资总额。
在 sql 命令格式使用的先后顺序上,group by 先于 order by。
select 命令的标准格式如下:
SELECT select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
1. GROUP BY 是分组查询, 一般 GROUP BY 是和聚合函数配合使
用
group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函
数的列,必须出现在 group by 后面(重要)
例如,有如下数据库表:
A999 B
1999 abc
1999 bcd
2
1999 asdfg
如果有如下查询语句(该语句是错误的,原因见前面的原则)
select A,B from table group by A
该查询语句的意图是想得到如下结果(当然只是一相情愿)
A9999 B
999999 abc
19999 bcd
999999 asdfg
右边 3 条如何变成一条,所以需要用到聚合函数,如下(下面是正确的
写法):
select A,count(B) as 数量 from table group by A
这样的结果就是
A 数量
1999 3
2. Having
where 子句的作用是在对查询结果进行分组前,将不符合 where 条
件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,
使用 where 条件显示特定的行。
3
剩余18页未读,继续阅读
资源评论
plongzone
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功