《sqlserver函数大全剖析》由会员分享,可在线阅读,更多相关《sqlserver函数大全剖析(13页珍藏版)》请在金锄头文库上搜索。
1、Sql 2008 函数大全SQL2008 表达式:是常量、变量、列或函数等与运算符的任意组合。1. 字符串函数函数 名称 参数 示例 说明ascii(字符串表达式)select ascii(abc) 返回 97返回字符串中最左侧的字符的ASCII 码。char(整数表达式)select char(100) 返回 d把ASCII 码转换为字符。介于0 和 255 之间的整数。如果该整数表达式不在此范围内,将返回NULL 值。charindex(字符串表达式 1, 字符串表达式2,整数表达式)select charindex(ab,BCabTabD) 返回 3select charindex(ab
2、,BCabTabD, 4)返回 6在字符串2 中查找字符串 1,如果存在返回第一个匹配的位置,如果不存在返回0。如果字符串 1 和字符串 2 中有一个是null 则返回 null。可以指定在字符串2 中查找的起始位置。difference(字符串表达式 1,字符串表达式 2)select difference(Green,Greene)返回 4返回一个0 到 4 的整数值,指示两个字符表达式的之间的相似程度。0 表示几乎不同或完全不同,4 表示几乎相同或完全相同。注意相似并不代表相等left(字符串表达式,整数表达式)select left(abcdefg,2) 返回 ab返回字符串中从左边开
3、始指定个数的字符。 /貌似下标从1开始?right(字符串表达式,整数表达式)select right(abcdefg,2) 返回 fg返回字符串中从右边开始指定个数的字符。len(字符串表达式)select len(abcdefg)返回 7select len(abcdefg) 返回 7返回指定字符串表达式的字符数,其中不包含尾随空格。Oracle和mysql 里面是 select length(aaa);lower(字符串表达式)select lower(ABCDEF)返回 abcdef返回大写字符数据转换为小写的字符表达式。upper(字符串表达式)select upper(abcdef
4、)返回 ABCDEF返回小写字符数据转换为大写的字符表达式。ltrim(字符串表达式)select ltrim(abc)返回 abc返回删除了前导空格之后的字符表达式。rtrim(字符串表达式)select rtrim(abc)返回 abc返回删除了尾随空格之后的字符表达式。patindex(字符串表达式 1,字符串表达式 2)select patindex(%ab%,123ab456)返回4select patindex(ab%,123ab456)返回0select patindex(_ab%,123ab456)返回1select patindex(_ab_,123ab456)返回0在字符串
5、表达式1 中可以使用通配符,此字符串的第一个字符和最后一个字符通常是%。%表示任意多个字符,_表示任意字符返回字符串表达式2 中字符串表达式 1 所指定模式第一次出现的起始位置。没有找到返回0reverse(字符串表达式)select reverse(abcde)返回 edcba返回指定字符串反转后的新字符串space(整数表达式)select a+space(2)+b 返回 a b返回由指定数目的空格组成的字符串。str(float 型小数,总长度,小数点 后保留的位数)select str(123.451) 返回123(123前面有空格)select str(123.451,3) 返回12
6、3select str(123.451,7,3) 返回123.451select str(123.451,7,1) 返回123.5select str(123.451,5,3)返回123.5select str(123.651,2)返回*返回由数字转换成的字符串。返回字符数不到总长度的前面补空格,超过总长度的截断小数位。如果需要截断整数位则返回*。注意在截断时遵循四舍五入总长度。它包括小数点、符号、数字以及空格。默认值为10。小数点后最多保留16 位。默认不保留小数点后面的数字stuff(字符串表达式 1,开始位置,长度,字符串表达式 2)select stuff(abcdef,2,2,123
7、)返回 a123def在字符串表达式1 中在指定的开始位置删除指定长度的字符,并在指定的开始位置处插入字符串表达式2。返回新字符串substring(字符串表达式,开始位置,长度)select substring(abcdef,2,2)返回bc返回子字符串replace(字符串表达式 1,字符串表达式 2,字符串表达式 3)Select replace(abcttabchhabc,abc,123)返回 123tt123hh123用字符串表达式3 替换字符串表达式 1 中出现的所有字符串表达式2 的匹配项。返回新的字符串2. 日期和时间函数函数名称参数 示例 说明dateadd(日期部分,数字,
8、日期)select dateadd(year,45,1990-12-11)返回 2035-12-11 00:00:00.000select dateadd(month,45,1990-12-11)返回 1994-09-11 00:00:00.000select dateadd(mm,45,1990-12-11)返回 1994-09-11 00:00:00.000select dateadd(qq,12,1990-12-11)返回 1993-12-11 00:00:00.000select dateadd(hh,12,1990-12-11)返回 1990-12-11 12:00:00.000se
9、lect dateadd(yy,-12,1990-12-11)返回 1978-12-11 00:00:00.000返回给指定日期加上一个时间间隔后的新的日期值。数字:用于与指定的日期部分相加的值。如果指定了非整数值,则将舍弃该值的小数部分,舍弃时不遵循四舍五入。日期:指定的原日期在此函数中dw,dy,dd 效果一样都表示天datediff(日期部分,开始日期,结束日期)Select datediff(yy,1990-12-11,2008-9-10)返回两个指定日期的指定日期部分的差的整数值。在计算时由结束日期减去开始日期返回 18selectdatediff(mm,2007-12-11,200
10、8-9-10)返回 9在此函数中dw,dy,dd 效果一样都表示天datename(日期部分,日期)select datename(mm,2007-12-11)返回 12select datename(dw,2007-12-11)返回星期二select datename(dd, 2007-12-11)返回 11返回表示指定日期的指定日期部分的字符串。dw 表示一星期中星期几,wk 表示一年中的第几个星期dy 表示一年中的第几天datepart(日期部分,日期)select datepart(mm,2007-12-11)返回 12select datepart(dw,2007-12-11)返回
11、3select datepart(dd, 2007-12-11)返回 11返回表示指定日期的指定日期部分的整数。wk 表示一年中的第几个星期dy 表示一年中的第几天,dw 表示一星期中星期几,返回整数默认 1 为星期天getdate无参数select getdate()返回 2009-04-28 18:57:24.153返回当前系统日期和时间。day(日期)select day(2007-12-11)返回 11返回一个整数,表示指定日期的天的部分。等价于datepart(dd, 日期)month(日期)select month(2007-12-11)返回 12返回一个整数,表示指定日期的月的部
12、分。等价于datepart(mm, 日期)year(日期)select year(2007-12-11)返回2007返回一个整数,表示指定日期的年的部分。等价于datepart(yy, 日期)getutcdate无参数select getutcdate()返回2009-04-28 10:57:24.153返回表示当前的UTC(世界标准时间)时间。即格林尼治时间(GMT)3. 日期部分(指定要返回新值的日期的组成部分。下表列出了 Microsoft SQL Server 2008 可识别的日期部分及其缩写。)日期部分 含义缩写year年yy, yyyyquarter季qq, qmonth月mm,
13、 mdayofyear天(请看函数中的说明)dy, yday天(请看函数中的说明)dd, dweek星期wk, wwweekday天(请看函数中的说明)dw, whour小时hhminute分钟mi, nsecond秒ss, smillisecond毫秒ms4. 数学函数函数名称 参数 示例 说明abs(数值表达式)select abs(-23.4)返回 23.4返回指定数值表达式的绝对值(正值)pi无参数select pi()返回 3.14159265358979返回的值cos(浮点表达式)select cos(pi()/3)返回 0.5返回指定弧度的余弦值sin(浮点表达式)select
14、sin(pi()/6)返回 0.5返回指定弧度的正弦值cot(浮点表达式)select cot(pi()/4)返回 1返回指定弧度的余切值tan(浮点表达式)select tan(pi()/4)返回 1返回指定弧度的正切值acos(浮点表达式)select acos(0.5)返回 1.0471975511966返回其余弦是所指定的数值表达式的弧度,求反余弦asin(浮点表达式)select asin(0.5)返回 0.523598775598299返回其正弦是所指定的数值表达式的弧度,求反正弦atan(浮点表达式)select atan(1)返回0.785398163397448返回其正切是所指定的数值表达式的弧度,求反正切degrees(数值表达式)select degrees(pi()/4) 返回45返回以弧度指定的角的相应角度。radians(数值表达式)select radians(180.0)返回3.1415926535897931返回指