首页 > 开发 > 综合 > 正文

SQLserver中常用的函数及实例

2024-07-21 02:48:43
字体:
来源:转载
供稿:网友
SQLserver中常用的函数及实例

聚合函数

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

最小值

selectMIN(jiage)as价格fromshuiguo--求最低价格

selectMIN(jiage)as价格fromshuiguo--求最低价格

最大值

selectMAX(jiage)as价格fromshuiguo--求最高的价格

总数

selectCOUNT(*)fromshuiguo--查表中一共有多少个数据

selectCOUNT(*)fromshuiguowherechandilike'海%'--产地是海开头的有几个

selectCOUNT(distinctchandi)fromshuiguo--去重之后查个数

平均值

selectAVG(jiage)as平均价格fromshuiguo--求平均价格

总和

selectSUM(jiage)as价格fromshuiguo--求总和

也可以并排一起写,如:

selectCOUNT(name)as水果个数,SUM(jiage)as价格总和fromshuiguo

字符串函数

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

select*fromhahawhereASCII(name)>200

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

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

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

--结果为(asd)

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

--结果为sdf

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

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

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

selectLTRIM('aaaaaaaaaa')--去除字符串左边的空格,字符串中间的空格去不掉

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

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

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

selectREVERSE(1123)--reverse为翻转

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

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

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

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

日期和时间函数

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

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

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

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

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

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

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

数学规范函数

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

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

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

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

sqrt()平方根

square()求平方

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表