SQLServer分组数据

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术: SQLServer

作者:黄瑞杰

撰写时间:2022/05/16

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

一、SQL Server Group By语句

Group By 从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集” 划分成若干个“小区域”,然后针 对若干个“小区域”进行数据处理。

以下是 GROUP BY 子句的语法:

在此查询语法中, GROUP BY 子句为列中的每个值组合生成一个组。

二、GROUP BY子句和聚合函数

GROUP BY 子句通常与聚合函数一起用于统计数据。

聚合函数对组执行计算并返回每个组的唯一值。 例如, COUNT() 函数返回每个组中的行数。

其他常用的聚合函数是: SUM() , AVG() , MIN() , MAX() 。

GROUP BY 子句将行排列成组,聚合函数返回每个组的统计量(总数量,最小值,最大值,平均值,总和 等)。

例如,以下查询返回客户按年度下达的订单数:

如果要引用 GROUP BY 子句中未列出的任何列或表达式,则必须使用该列作为聚合函数的输入。 否则,数据库系统将会提示错误,因为无法保证列或表达式将为每个组返回单个值。

三、SQL Server Having子句

HAVING 子句通常与[GROUP BY]子句一起使用,以根据指定的条件列表过滤分组。 以下是 HAVING 子句 的语法:

在此语法中, GROUP BY 子句将行汇总为分组, HAVING 子句将一个或多个条件应用于这些每个分组。

只有使条件评估为 TRUE 的组才会包含在结果中。 换句话说,过滤掉条件评估为 FALSE 或 UNKNOWN 的组。

因为SQL Server在 GROUP BY 子句之后处理 HAVING 子句,所以不能通过使用列别名来引用选择列表中指定的聚合函数。

以下查询将失败:

SQLServer分组数据相关推荐

  1. SQLServer 2008 技术内幕——T-SQL 查询 笔记

    原文:SQLServer 2008 技术内幕--T-SQL 查询 笔记 1.SQL编程有许多独特之处,如:面向集合的思维方式.查询元素的逻辑处理顺序.三值逻辑.如果不掌握这些知识就开始用SQL编程,得 ...

  2. Mysql,SqlServer,Oracle主键自动增长的设置

    Mysql,SqlServer,Oracle主键自动增长的设置 参考文献 http://blog.csdn.net/andyelvis/article/details/2446865 1.把主键定义为 ...

  3. oracle手工启动,SQLSERVER服务手工启动 批处理文件

    不比2000有个 开关的程序 所以上网找了下教程 自己写个批处理 自动启动服务 哇哈哈 突然觉得 只要有网络 语言不是啥大的障碍 写起来都差不多呀 哇哈哈 话说最近又加了个ORACLE的服务 依然偷懒 ...

  4. MySQL 学习笔记(3)— 字符串函数、数值函数、日期时间函数、流程函数、聚集函数以及分组数据

    1. 字符串函数 MySQL 的常用函数包括字符串函数.数值函数.日期时间函数.流程函数等. SELECT ascii("abc"),char(97),concat("h ...

  5. SQLServer 系统表

    SQLServer 系统表 http://blog.163.com/zangyunling@126/blog/static/1646245052010101641620415/ http://www. ...

  6. mysql和sqlserver共存_mysql 和sqlserver的 多行合并成一行

    mysql 和sqlserver的 多行合并成一行 mysql  多行合并: mysql 内置函数 group_concat(exper  SEPARATOR " " ) expe ...

  7. sqlserver mysql 乱码_SQLServer数据库如何解决中文乱码问题?方法有哪些?

    很多使用数据库的人都知道,在安装SQLServer数据库是,如果设置不当就会出现一些中文乱码.主要原因是,很多人在使用默认安装系统时,一般不会考虑到默认排序的规则是拉丁文的排序规则,只是点击下一步,在 ...

  8. 看懂SqlServer查询计划(转)

    转自:http://www.cnblogs.com/fish-li/archive/2011/06/06/2073626.html 对于SqlServer的优化来说,可能优化查询是很常见的事情.关于数 ...

  9. sqlserver导入excel的电话号码(身份证)变为科学计数解决方式

    如果excel中有一列存的是手机号码或者身份证号码,那么导入到sql中时,会把手机或者身份证当作数字格式对待,因而会以科学记数法的形式存在sqlserver表中,解决方式,先将excel文件另存为文本 ...

最新文章

  1. 四轴飞行器实践教程第1章什么是飞行器
  2. 活动目录实战系列二(主域控无法正常启动)
  3. 风暴航路的地图编号_砖厂风暴航路已倒闭,新的搬砖圣地诞生
  4. 《Python Cookbook 3rd》笔记(2.2):字符串开头或结尾匹配
  5. MySQL Cookbook 学习笔记-03
  6. 天地图卫星地图_AutoCAD使用卫星地图
  7. oracle没用过元数据,案例:Oracle RAC asm备份元数据之md_backup和md_restore 好处与
  8. 数据库51年来十八件大事年表
  9. -mmin find shell 报错_[shell]find用法小结
  10. 设计模式(三) 工厂模式
  11. 计算机组成原理第一章练习题(答案详解)
  12. 从狗屁不通文章生成器,到机器写作之路
  13. LQBv13-Python:猜年龄
  14. 网页Unity3d游戏全离线玩的高招!
  15. python 英语分词_基于Python NLTK库进行英文文本预处理
  16. Matlab过零补偿角,无刷直流电机反电动势过零检测及其相位补偿.pdf
  17. 企业微信会话存档功能开启
  18. 物联网安全解决方案_如何设计具有安全性的自制物联网解决方案
  19. 用matlab计算卫星的瞬时位置,用MATLAB计算GPS卫星位置
  20. 如何用P6软件编制项目进度计划

热门文章

  1. Win10笔记本扩展显示屏模糊处理办法
  2. 介绍当前计算机软件应用发展状况,简要介绍我国当前税收征管软件的应用状况...
  3. 单片机外围电路:电阻(1)
  4. 艺赛旗RPA 第三方库系列(一):如何调用 Python 第三方库
  5. Android图片加载框架最全解析(五)
  6. 贪心:Fence Repair、Saruman's Army
  7. (转) 阿拉贡的故事
  8. 久视伤血,久卧伤气,久坐伤肉,久立伤骨,久行伤筋
  9. Verilog硬件描述语言 西安电子科技大学 蔡觉平主讲 P8 语言设计思想和和可综合特性、组合电路设计 课程笔记
  10. python九宫格拼图_Python切割图片成九宫格