SQLServer 学习笔记之超详细基础SQL语句 Part 6

Sqlserver 学习笔记

by:授客 QQ1033553122
-----------------------接Part 5-------------------

28 聚合函数

--求平均分

SELECT AVG(高考分数) FROM std_table

 

--求总和

SELECT SUM(高考分数) FROM std_table

 

--求最低分

SELECT MIN(高考分数) FROM std_table

 

--求最高分

SELECT MAX(高考分数) FROM std_table

 

--返回列中高考分数不为空值的记录行数

SELECT COUNT(高考分数) AS 记录行数 FROM std_TABLE

 

--数学函数

--求绝对值

SELECT ABS(8)

SELECT ABS(-8)

 

--求圆周率

SELECT PI()

 

--求大于或等于所给数值的最小整数

SELECT CEILING(5.6)--结果为6

SELECT CEILING(5)--结果为5

 

--求小于或等于所给值的最大整数

SELECT FLOOR(5.6)  --结果5

 

--xy次方

SELECT POWER(2,3)--求二的三次方,结果

 

--返回0~1之间的随机函数(每次执行结果都是随机的)

SELECT RAND()

 

--配置函数

--获取当前数据库版本号

SELECT @@VERSION

 

--获取当前语言

SELECT @@LANGUAGE

 

--时间函数

--获取当前时间(yyyy-mm-dd hh:mm:ss)

SELECT GETDATE()

 

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

--获取当前时间所在日期(第几号)

SELECT DAY(GETDATE())

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

 

 

--取出时间所在的月份

SELECT MONTH(GETDATE())

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

 

 

--取出时间所在的年份

SELECT YEAR(GETDATE())

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

 

 

--给当前时间添加天数(D),月数(M),年数(Y)

SELECT DATEADD(D, 3, GETDATE()) AS wawa

SELECT DATEADD(M, 3, GETDATE()) AS wawa

SELECT DATEADD(YEAR, 3, GETDATE()) AS wawa

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

 

--从当前时间中取出某一部分

SELECT DATENAME(D,'2010-11-15')--取出天数

SELECT DATENAME(M,'2010-11-15')--取出月数

SELECT DATENAME(YEAR,'2010-11-15')--取出年数

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

 

 

--字符串函数

SELECT LEN('strl11')--返回字符串的字符个数[结果是6]

SELECT LOWER('ABC'), LOWER('Abc'), UPPER('Abc'), UPPER('abc')--大小写转换

 

--结果abc abc ABC ABC

SELECT LTRIM('  去掉左边空格')

SELECT RTRIM('去掉右边空格 ')

SELECT LEFT('取左边三个字符', 3)--结果取左边3个字符

SELECT RIGHT('取右边三个字符', 3)--结果3个字符[从右边往左算三个]

 

--用某字符串来替换某个指定字符串的字符串子集

SELECT REPLACE('原字符串', '', '这是一个')--结果 这是一个字符串

 

--按指定次数,重复字符串,最后输出字符串

SELECT REPLICATE('go', 5)--结果gogogogogo

 

--按指定字符串反序排列

SELECT REVERSE('这是个字符串') --结果:串符字个是这

 

--按指定位置开始截取指定长度的字符串

SELECT SUBSTRING('这是个字符串', 2, 3)--结果:是个字[:下标从1开始

 

--排名函数

--RANK() --返回结果集的分区内每行的排名

--RANK() OVER(ORDER BY 列名)

SELECT * FROM std_table

 

--把查询结果按高考分数的排名列出来

SELECT *, RANK() OVER(ORDER BY(高考分数)) 排名 FROM std_table

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

 

 

SELECT *, RANK() OVER(ORDER BY(高考分数) DESC) 排名 FROM std_table

SQLServer <wbr>学习笔记之超详细基础SQL语句 <wbr>Part <wbr>6

 

原文地址:https://www.cnblogs.com/shouke/p/10158066.html