SQL Server中的聚合函数和模式匹配

转载 2015年11月21日 19:26:48

 SQL Server中的聚合函数

聚合函数是对一组值执行计算并返回单一的值的函数,它经常与SELECT语句的GROUP BY子句一同使用,SQL SERVER 中具体有哪些聚合函数呢?
1. AVG  返回指定组中的平均值,空值被忽略。
    例:select  prd_no,avg(qty) from sales group by prd_no
 
2. COUNT  返回指定组中项目的数量。
      例:select  count(prd_no) from sales 
 
3. MAX  返回指定数据的最大值。
      例:select  prd_no,max(qty) from sales group by prd_no 
 
4. MIN  返回指定数据的最小值。
      例:select  prd_no,min(qty) from sales group by prd_no
 
5. SUM  返回指定数据的和,只能用于数字列,空值被忽略。
      例:select  prd_no,sum(qty) from sales group by prd_no
 
6. COUNT_BIG  返回指定组中的项目数量,与COUNT函数不同的是COUNT_BIG返回bigint值,而COUNT返回的是int值。
     例:select  count_big(prd_no) from sales
 
7. GROUPING  产生一个附加的列,当用CUBE或ROLLUP运算符添加行时,输出值为1.当所添加的行不是由CUBE或ROLLUP产生时,输出值为0.
     例:select  prd_no,sum(qty),grouping(prd_no) from sales group by prd_no with rollup
 
8. BINARY_CHECKSUM  返回对表中的行或表达式列表计算的二进制校验值,用于检测表中行的更改。
     例:select  prd_no,binary_checksum(qty) from sales group by prd_no
 
9. CHECKSUM_AGG  返回指定数据的校验值,空值被忽略。
     例:select  prd_no,checksum_agg(binary_checksum(*)) from sales group by prd_no
 
10. CHECKSUM  返回在表的行上或在表达式列表上计算的校验值,用于生成哈希索引。
 
11. STDEV  返回给定表达式中所有值的统计标准偏差。
     例:select  stdev(prd_no) from sales
 
12. STDEVP  返回给定表达式中的所有值的填充统计标准偏差。
     例:select  stdevp(prd_no) from sales
 
13. VAR  返回给定表达式中所有值的统计方差。
     例:select  var(prd_no) from sales
 
14. VARP  返回给定表达式中所有值的填充的统计方差。
     例:select  varp(prd_no) from

模式匹配

sql没有正则表达式,只能使用like
一 语法 
match_expression   [   NOT   ]   LIKE   pattern   [   ESCAPE   escape_character   ] 


二 参数 
match_expression   任何字符串数据类型的有效   SQL   Server   表达式。 
patternmatch_expression   中的搜索模式,可以包含下列有效   SQL   Server   通配符 


1       %     包含零个或更多字符的任意字符串 
        示例:WHERE   title   LIKE   '%computer% '     将查找处于书名任意位置的包含单词   computer   的所有书名。 


2     _(下划线)   任何单个字符 
      示例:WHERE   au_fname   LIKE   '_ean '   将查找以   ean   结尾的所有   4   个字母的名字(Dean、Sean   等)。 


3       []   指定范围中的任何单个字符 
      示例:WHERE   au_lname   LIKE   '[C-P]arsen '   将查找以arsen   结尾且以介于   C   与   P   之间的任何单个字符开始的   作者姓氏,例如,Carsen、Larsen、Karsen   等 


4   [^]     不属于指定范围中的任何单个字符,与   []   相反 
      示例:WHERE   au_lname   LIKE   'de[^l]% '   将查找以   de   开始且其后的字母不为   l   的所有作者的姓氏。 
  
三   使用escape字句的模式匹配 


可搜索包含一个或多个特殊通配符的字符串。例如,customers   数据库中的   discounts   表可能存储含百分号   (%)   的折扣值。
若要搜索作为字符而不是通配符的百分号,必须提供   ESCAPE   关键字和转义符。例如,一个样本数据库包含名为   comment   的列,该列含文本   30%。
若要搜索在   comment   列中的任何位置包含字符串   30%   的任何行,请指定由   WHERE   comment   LIKE   '%30!%% '   ESCAPE   '! '   组成的   WHERE   子句。
如果不指定   ESCAPE   和转义符,SQL   Server   将返回所有含字符串   30   的行。 


四  匹配双引号
可以使用单引号在外层

Sql Server 字符串聚合函数

      Sql Server 有如下几种聚合函数SUM、AVG、COUNT、COUNT(*)、MAX 和 MIN,但是这些函数都只能聚合数值类型,无法聚合字符串。如下表:AggregationTa...
  • tjvictor
  • tjvictor
  • 2009年06月22日 15:38
  • 7475

SqlServerCLR聚合函数:分组连接字符串

今天在开源社区看到某个人问如何将表里某列字符串按照group by的分组连接成一个字符串,相当于字符串版的sum函数。想了半天没想出好办法。最后突然想起来SqlServer可以用CLR写函数,所以用C...
  • hutao1101175783
  • hutao1101175783
  • 2017年07月12日 16:07
  • 200

自定义字符串聚合函数

  • 2012年08月23日 11:09
  • 2KB
  • 下载

实例详解Sql Server 所有聚合函数--【叶子】

一、Sql Server 中有哪些聚合函数? 提到聚合函数大家一定会首先想到最常用的: 1、 求个数:count 2、 求总和:sum 3、 求最大值:max 4、 求最小值:min 5、...
  • maco_wang
  • maco_wang
  • 2011年11月25日 15:08
  • 23256

SQL字符串的分组聚合(ZT)

本文转载于T-Sql:字符串分组聚合,也许你还有更简单的办法?         今天在看订阅的RSS的时候,看到这么一个问题:T-Sql中如何对分组的信息进行聚合,并以逗号连接字符;也就是对一个表中...
  • zfanlong1314
  • zfanlong1314
  • 2012年02月27日 23:02
  • 4439

SQL-字符串连接聚合函数

原文:http://blog.csdn.net/java85140031/article/details/6820699 问题:   userId  role_name         role_id...
  • Young4Dream
  • Young4Dream
  • 2016年11月30日 20:27
  • 235

【SqlServer系列】聚合函数

1   概述  本篇文章简要回顾SQL Server  聚合函数,MAX,MIN,SUM,AVG,SUM,CHECKSUM_EGG,COUNT,STDEV,STDEVP,VAR,VARP。 2  ...
  • u010228798
  • u010228798
  • 2017年10月11日 19:28
  • 117

16、SQL Server 汇总数据之聚合函数与分组 group by

汇总数据 主要用于对数据集的的数据进行汇总统计等操作,基本是聚合函数。 聚合的基本理念:不是返回所有指定的行,而是返回一行计算得到的值(前面指定的行 的某些数据的汇总)。它们汇总了原始数据集。 ...
  • xuxianmei
  • xuxianmei
  • 2013年05月31日 12:54
  • 3070

SQL Server聚合函数总结

当走在嘈杂的城市中时,什么能让我们变得冷静呢?心声向我述说了一些,“简单”不一定就真的简单,它是相对的,当我们长大了,想要保持儿时的单纯,我想只能在梦中由心所发了,因为现实让我们都变了,要想重新找回曾...
  • marvel_java
  • marvel_java
  • 2016年12月02日 18:08
  • 869

SQL Server中的模式匹配

Author: David EulerDate: 2004/11/17Email: de_euler-david@yahoo.com.cn 有任何问题,请与我联系:)SQL Server Books ...
  • davidullua
  • davidullua
  • 2004年11月17日 14:51
  • 1502
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL Server中的聚合函数和模式匹配
举报原因:
原因补充:

(最多只允许输入30个字)