问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

不是单组分组函数31

发布网友 发布时间:2023-10-26 22:09

我来回答

2个回答

热心网友 时间:2024-11-16 19:53

Group by用法(http://yofi.javaeye.com/blog/394208)
用途:

对结果集进行分组,常与汇总函数一起使用。

语法:

SELECT column,SUM(column) FROM table GROUP BY column
例:

“Sales” 表中的原始数据 :

Company Amount

W3Schools 5500

IBM 4500

W3Schools 7100

按照 Company 字段进行分组,求出每个 Company 的 Amout 的合计:

SELECT Company,SUM(Amount) FROM Sales GROUP BY Company
返回结果 :

Company SUM(Amount)

W3Schools 12600

IBM 4500

Having
用途:

指定群组或汇总的搜寻条件。

语法:

SELECT column,SUM(column) FROM table GROUP BY column HAVING SUM(column) condition value
解释:

HAVING 通常与 GROUP BY 子句同时使用。不使用 GROUP BY 时, HAVING 则与 WHERE 子句功能相似。

例:

“Sales” 表中的原始数据 :

Company Amount

W3Schools 5500

IBM 4500

W3Schools 7100

按照 Company 字段进行分组,求出每个 Company 的 Amout 的合计在 10000 以上的数据:

SELECT Company,SUM(Amount) FROM Sales GROUP BY Company HAVING SUM(Amount)>10000
返回结果 :

Company SUM(Amount)

W3Schools 12600

举一个CSDN论坛上的例子:
例如表 A

Name Grade
小明 2
小王 1
小利 3
旺才 2
小强 3

你如果想按年级统计人数就可以:
SELECT Grade, COUNT(*) AS 人数 FROM A GROUP BY Grade

Grade 人数
----------- -----------
1 1
2 2
3 2

HAVING: http://www.webjx.com/database/sqlserver-9540.htm
在介绍GROUP BY 和 HAVING 子句前,我们必需先讲讲sql语言中一种特殊的函数:聚合函数,例如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。
在介绍GROUP BY 和 HAVING 子句前,我们必需先讲讲sql语言中一种特殊的函数:聚合函数,例如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。

SELECT SUM(population) FROM bbc

这里的SUM作用在所有返回记录的population字段上,结果就是该查询只返回一个结果,即所有国家的总人口数。

通过使用GROUP BY 子句,可以让SUM 和 COUNT 这些函数对属于一组的数据起作用。当你指定 GROUP BY region 时,属于同一个region(地区)的一组数据将只能返回一行值.也就是说,表中所有除region(地区)外的字段,只能通过 SUM, COUNT等聚合函数运算后返回一个值.

HAVING子句可以让我们筛选成组后的各组数据. WHERE子句在聚合前先筛选记录.也就是说作用在GROUP BY 子句和HAVING子句前.而 HAVING子句在聚合后对组记录进行筛选。

让我们还是通过具体的实例来理解GROUP BY 和 HAVING 子句,还采用第三节介绍的bbc表。

SQL实例:

一、显示每个地区的总人口数和总面积.
SELECT region, SUM(population), SUM(area)
FROM bbc
GROUP BY region

先以region把返回记录分成多个组,这就是GROUP BY的字面含义。分完组后,然后用聚合函数对每组中的不同字段(一或多条记录)作运算。

二、 显示每个地区的总人口数和总面积.仅显示那些面积超过1000000的地区。

SELECT region, SUM(population), SUM(area)
FROM bbc
GROUP BY region
HAVING SUM(area) > 1000000

在这里,我们不能用where来筛选超过1000000的地区,因为表中不存在这样一条记录。相反,HAVING子句可以让我们筛选成组后的各组数据.

参考资料:http://yofi.javaeye.com/blog/394208

热心网友 时间:2024-11-16 19:54

http://www.1keydata.com/tw/sql/sqlgroupby.html
这里有 你看看
我讲的话可以能不权威也不全面
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 锻炼颈椎的几个动作 水多久能结冰 冰能在多长时间内形成 请问水低于0度会结冰吗? 如何防止脱发严重 嘴唇上有黑印用蜜蜡和棉线去除了胡须 函数原型与函数声明的关系42 散逛的读音散逛的读音是什么 无线宽带信号弱不稳定连接不上网络是怎么回事呢? 高硬度合金钢怎样才能做到防锈防腐 谁能帮我写一篇英语作文?八十至一百个词,关于人生哲理的,不要...3 有关人生感悟的至理名言3 笔记本电池的总容量只剩下设计的30%左右了,这电池还能用么?... 谁能给我介绍关于燃烧器方面的书籍吗? 为什么有的加不了好友啊? 昌新国际艺术学院几本 郴州市银通安防工程有限公司怎么样? 郴州市亚太保安服务有限公司怎么样? 盗墓笔记小哥为什么不老不死?同样不老不死的都有谁?189 谁告诉我"老兵不死,他们只是悄然隐去"出自哪首歌?29 一个人一个月活32天,你们说以后是短命还是老不死?2 使命召唤系列里千年老不死是谁4 为啥COD的钱队人送外号“万年老不死”?4 电脑怎么同时接2.1和2.0音响?1 显卡HDMI接口输出的音频有办法让普通5.1音响播放吗1 六年级口语交际:我来当导游 哪种性格类型帅哥喜欢阳光型美女就是活泼外向开朗爱动? 急急急,求《我叫郝聪明》24集中黄俊寻找呼呼那段插曲,歌曲名... wxid但搜不到怎么加好友 30平方米咖啡馆怎样装修效果图2 解梦,梦到鼻毛长得很长很长,都快到嘴巴了,这是什么意思啊?16 管道天然气与瓶装液化气有什么区别?5 请问这是什么商标?瓷盘上的。 这是瓷器上的商标……不知谁认得! 请问行家这个瓷盘是什么标志?1 这个瓷器上的标志是什么? 聊城前列腺增生制疗方式有哪些? 聊城制疗前列腺炎的步骤有几步? 聊城前列腺炎男姓怎么办?2 聊城前列腺炎怎么确诊?1 郴州乐家安防工程有限责任公司怎么样? 郴州鑫三和安防工程有限公司怎么样? 孩子作业难度越来越大,托管班老师能搞定吗? 无源天线为什么有增益? 读了这篇短文你想对欧阳海叔叔说些什么4 读了短文以后你对企鹅有什么样的了解根据短文内容也可以在查找资...9