聚合函数

as是可以起别名的,在select和from之间的是表示列名,可以不加单引号)(聚合函数中的count不仅能对数字进行操作还能对字符型进行操作,其余的只能对数字操作)

最小值

select  MIN(jiage) as 价格 from shuiguo --求最低价格

select  MIN(jiage) as 价格 from shuiguo --求最低价格

最大值

select MAX(jiage) as 价格 from shuiguo --求最高的价格

总数

select COUNT(*) from shuiguo--查表中一共有多少个数据

select COUNT(*) from shuiguo where chandi like '海%'--产地是海开头的有几个

select COUNT(distinct chandi) from shuiguo --去重之后查个数

平均值

select AVG(jiage) as 平均价格 from shuiguo--求平均价格

总和

select SUM(jiage) as 价格 from shuiguo --求总和

也可以并排一起写,如:

select COUNT(name) as 水果个数 ,SUM(jiage) as 价格总和 from shuiguo

字符串函数

select ASCII('')--返回字符串首字母ascii编码

select CHAR(100)--将ascii代码转换成对应的字符(ascii码对应的类型是int)

select CHARINDEX('sdf','asdfg')--查找字符串,返回符合条件的首字母索引,索引从1开始,返回0表示没有找到

select left('asdfg',3)--从左往右截取字符串指定长度

--结果为(asd)

select RIGHT('asdf',3)--从右往左按指定个数截取长度

--结果为sdf

select LEN(' asd    ')--返回字符串长度,后面的空格不计算

select LOWER('AsDf')--将大写字母转换成小写字母

select UPPER('asdA')--将小写字母转换成大写字母

select LTRIM ('     aaaaaaaaa    a')--去除字符串左边的空格,字符串中间的空格去不掉

select RTRIM ('a              ')--去除右边的可空格

select REPLACE(列名,替换前的内容,替换后的内容)--replace替换只是在显示的时候替换,对原数据不做修改

select REPLICATE('asd',3)--replicate为复制,前面是要复制的内容,后面是要复制几次

select REVERSE(1123)--reverse为翻转

select SPACE(7)--space表示打印空格,参数表示打印几个空格

select STR(小数的原数据,字符串的长度,截取小数点后几位)--小数点也算一个字符  --select STR(5672.1234,8,2)结果为5672.12

select STUFF('asdfghjk',3,0,'12345')    表示的意思是:12345插在d之后,0表示fghjk不删除,如果是1则删除f,2删除fg,以此类推

select SUBSTRING(列名,要截取开始的位数,截取几位)--要截取开始的位数的索引是从1开始

日期和时间函数

select DATEADD(YEAR, 1,'2003-12-3')--指定日期加入一个时间段

select DATEDIFF(yyyy,'2001-12-5','2012-12-12')--求时间差,可以指定类型来算

--年year 月month 日day 时huor 分minute 秒second

select DATEPART(MM ,'2013-1-15')  ----获取当前月,只是datename是返回的字符串型,detapart时返回的int型

select GETDATE() --获取服务器当前时间

select ISDATE('2014-11-12')--判断是否是时间如期,如果时间正确返回,错误返回

select YEAR('2012-12-12')--select后可跟年、月、日

数学规范函数

ceiling()取上限,小数点后有值就进

floor()取下限,不管小数点后有没有值,都舍掉

power(3,2)--表示3的2次方

round(1.2345,0) 后面参数是代表四舍五入到小数点后第几位

sqrt()平方根

square()求平方

附加  group by 与order by的区别 

【要区分group by 与 order by】

Group by 函数的作用是分组

Order by 函数的作用是排序

组合

select banji from xinxibiao   group by banji--分组

select banji,COUNT(*) from xinxibiao group by banji having COUNT(*)>4--having后只能加聚合函数,having是针对统计好的结果进行筛选,所以使用having的前提必须使用group by

--顺序:先是where条件,没有where的找from,后是group by ,再是select后的条件,最后是having

select banji,count(*) from xinxibiao where yuwen>=75 group by banji order by COUNT(*) desc--每个班级语文成绩大于的有几个人,班级并降序排列

select banji ,AVG(yuwen) from xinxibiao group by banji--分组之后并求平均分

select banji as 班级 ,MAX(yuwen) as 语文,MAX(shuxue) as 数学,MAX(yingyu) as 英语 from xinxibiao group by banji  --求每班每科的最高分

SQLserver中常用的函数及实例的更多相关文章

  1. (转)笔记320 SQLSERVER中的加密函数 2013-7-11

    1 --SQLSERVER中的加密函数 2013-7-11 2 ENCRYPTBYASYMKEY() --非对称密钥 3 ENCRYPTBYCERT() --证书加密 4 ENCRYPTBYKEY() ...

  2. jQuery中常用的函数方法

    jQuery中常用的函数方法总结 Ajax处理 load(url,[data],[callback]) url (String) : 待装入 HTML 网页网址. data (Map) : (可选) ...

  3. string中常用的函数

    string中常用的函数 发现在string在处理这符串是很好用,就找了一篇文章放在这里了.. 用 string来代替char * 数组,使用sort排序算法来排序,用unique 函数来去重1.De ...

  4. SQL点滴30—SQL中常用的函数

    原文:SQL点滴30-SQL中常用的函数 该文章转载自http://www.cnblogs.com/jiajiayuan/archive/2011/06/16/2082488.html 别人的总结,很 ...

  5. Mysql中常用的函数汇总

    Mysql中常用的函数汇总: 一.数学函数abs(x) 返回x的绝对值bin(x) 返回x的二进制(oct返回八进制,hex返回十六进制)ceiling(x) 返回大于x的最小整数值exp(x) 返回 ...

  6. SQLSERVER中的 CEILING函数和 FLOOR函数

    SQLSERVER中的 CEILING函数和 FLOOR函数 --SQLSERVER中的 CEILING函数和 FLOOR函数 --ceiling函数返回大于或等于所给数字表达式的最小整数. --fl ...

  7. 【转载】Sqlserver中使用Round函数对计算结果四舍五入

    在实际应用的计算中,很多时候我们需要对最后计算结果四舍五入,其实在Sqlserver中也有对应的四舍五入函数,就是Round函数,Round函数的格式为Round(column_name,decima ...

  8. jQuery中常用的函数方法总结

    jQuery中为我们提供了很多有用的方法和属性,自己总结的一些常用的函数,方法.个人认为在开发中会比较常用的,仅供大家学习和参考. 事件处理 ready(fn) 代码: $(document).rea ...

  9. SQLServer中间接实现函数索引或者Hash索引

    本文出处:http://www.cnblogs.com/wy123/p/6617700.html SQLServer中没有函数索引,在某些场景下查询的时候要根据字段的某一部分做查询或者经过某种计算之后 ...

随机推荐

  1. SQL2008-字符转数字CAST和CONVERT

    语法 使用CAST: CAST(expression AS data_type) 使用CONVERT: CONVERT(data_type[(length)],expression,[style])例 ...

  2. Qt on_pushButton_clicked()的用法【worldsing笔记】

    在Qt里按钮控件默认对应一个on_pushButton_clicked()成员,如果想用点击信号,在代码中实现on_pushButton_clicked()成员即可. 最近看了一段代码,里面并没有co ...

  3. BAT及各大互联网公司2014前端笔试面试题:JavaScript篇

    前面几题是会很基础,越下越有深度. 初级Javascript: 1.JavaScript是一门什么样的语言,它有哪些特点? 没有标准答案. 2.JavaScript的数据类型都有什么? 基本数据类型: ...

  4. DDD 领域驱动设计-谈谈 Repository、IUnitOfWork 和 IDbContext 的实践

    http://www.cnblogs.com/xishuai/p/ddd-repository-iunitofwork-and-idbcontext.html

  5. Runtime 10种用法

    来源:haojingxue_iOS 链接:http://www.jianshu.com/p/3182646001d1 阅读了多篇运行时的文章,感觉都很不错,从几篇文章里面提取一些个人认为比较重要的,偏 ...

  6. .NET加密配置文件connectionStrings节点

    具体的可以参考petshop源码程序. 加密前: <connectionStrings> <add name="SQLProfileConnString" con ...

  7. Oracle DataGuard数据备份方案详解

    Oracle DataGuard是一种数据库级别的HA方案,最主要功能是冗灾.数据保护.故障恢复等. 在生产数据库的"事务一致性"时,使用生产库的物理全备份(或物理COPY)创建备 ...

  8. 写了几年代码了,苦苦追寻,应该沉淀下来了,好好研究。net底层框架,以及较好的分层框架

    几年码农了.像沉淀下来.写一下自己的分层框架,尤其是逻辑层和orm层.数据訪问层.一切靠自己.网上一大堆框架,可是感觉各有优缺点.于是萌生了自己写适合自己的底层訪问框架?亲们,你们有适合自己的框架么?

  9. js判断字符在另一个字符串中出现次数

    经过搜索验证,提供两个方法. 1. 通过分割获取长度原理 var s = 'www.51qdq.com';var n = (s.split('.')).length-1;alert(n);  //弹出 ...

  10. Upcase 将edit1中的每个字符串改为首字母大写

    //将edit1中的每个字符串改为首字母大写 procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);begin    with ...