SQL常用函数
函数名 |
描述 |
举例 |
字符串函数 |
||
ASCII |
获取字符的 ASCII 码 |
SELECT ASCII(‘f’) 返回:102 |
CHAR |
获取 ASCII 码对应的字符 |
SELECT CHAR(102) 返回:f |
CHARINDEX |
用来寻找一个指定的字符串在另一个字符串中的起始位置 |
SELECT CHARINDEX(‘ACCP’,’My 返回:4 |
DATALENGTH |
获取字符串字节数 |
SELECT 返回:10 |
DIFFERENCE |
两个字符表达式的 SOUNDEX 值之间的差异 |
SELECT 返回:44 |
LEN |
返回传递给它的字符串长度 |
SELECT LEN(‘SQL Server课程‘) 返回:12 |
LOWER |
把传递给它的字符串转换为小写 |
SELECT LOWER(‘SQL Server课程‘) 返回:sql server课程 |
UPPER |
把传递给它的字符串转换为大写 |
SELECT UPPER(‘sql server课程‘) 返回:SQL SERVER课程 |
UNICODE |
获取字符的 unicode 编码 |
SELECT UNICODE (‘飞‘) 返回:39134 |
NCHAR |
获取 unicode 编码对应的字符 |
SELECT NCHAR (39134) 返回:飞 |
LTRIM |
清除字符左边的空格 |
SELECT LTRIM (‘ 周智宇 返回:周智宇 (后面的空格保留) |
RTRIM |
清除字符右边的空格 |
SELECT RTRIM (‘ 周智宇 返回: 周智宇(前面的空格保留) |
RIGHT |
从字符串右边返回指定数目的字符 |
SELECT RIGHT(‘买卖提 . 吐尔松‘,3) 返回:吐尔松 |
REPLACE |
替换一个字符串中的字符 |
SELECT REPLACE(‘莫乐可切 . 杨可 ‘,’ 可‘,’兰‘) 返回:莫乐兰切 . 杨兰 |
REPLICATE |
按指定次数重复生成字符串 |
SELECT REPLICATE (‘hello’,5) 返回:hellohellohellohellohello |
REVERSE |
反序字符串 |
SELECT REVERSE (‘123456789’) 返回:987654321 |
LEFT |
截取左边字符串 |
SELECT LEFT (‘123456789’,3) 返回:123 |
RIGHT |
截取右边字符串 |
SELECT RIGHT (‘123456789’,3) 返回:789 |
STR |
转换浮点数字为字符串 |
SELECT STR (123.456789,7,3) 返回:123.457 |
SPACE |
生成空格字符串 |
select (‘hello’ + space(5) + 返回:hello world |
STUFF |
在一个字符串中,删除指定长度的字符,并在该位置插入一个新的字符串 |
SELECT STUFF(‘ABCDEFG’, 2, 3, ‘我的音乐我的世界‘) 返回:A我的音乐我的世界EFG |
SUBSTRING |
截取字符串 |
SELECT SUBSTRING (‘hello’,1,2) 返回:he |
QUOTENAME |
生成带分隔符的 unicode 字符串 |
SELECT QUOTENAME (‘我是一个兵‘,'”‘) 返回:“我是一个兵“ |
日期函数 |
||
GETDATE |
取得当前的系统日期 |
SELECT 返回:今天的日期 |
GETUTCDATE |
获取 UTC 时间值 |
SELECT GETUTCDATE()
返回:2016-09-26 |
YEAR |
获取年度信息 |
SELECT YEAR (getdate()) 返回:2016 |
MONTH |
获取月份信息 |
SELECT MONTH (getdate()) 返回:9 |
DAY |
获取天数信息 |
SELECT DAY (getdate()) 返回:26 |
DATEADD |
将指定的数值添加到指定的日期部分后的日期 |
SELECT 返回:以当前的日期格式返回1990/05/01 |
DATEDIFF |
两个日期之间的指定日期部分的区别 |
SELECT 返回:4 |
DATENAME |
日期中指定日期部分的字符串形式 |
SELECT 返回:Saturday |
DATEPART |
日期中指定日期部分的整数形式 |
SELECT 返回:15 |
数学函数 |
||
ABS |
取数值表达式的绝对值 |
SELECT ABS(-43) 返回:43 |
CEILING |
返回大于或等于所给数字表达式的最小整数 |
SELECT 返回:44 |
DEGREES |
返回弧度对应的角度 |
SELECT 返回:34.377467707849391000 |
FLOOR |
取小于或等于指定表达式的最大整数 |
SELECT 返回:43 |
PI |
返回圆周率Float |
SELECT 返回:3.14159265358979 |
POWER |
取数值表达式的幂值 |
SELECT POWER(5,2) 返回:25 |
RAND |
函数功能 返回 0 到1 之间的随机 float 值 |
SELECT RAND (100) 返回:0.715436657367485 |
ROUND |
将数值表达式四舍五入为指定精度 |
SELECT 返回:43.5 |
SIGN |
对于正数返回 +1,对于负数返回-1,对于0 则返回0 |
SELECT 返回:-1 |
SQRT |
取浮点表达式的平方根 |
SELECT 返回:3 |
SQUARE |
返回给定表达式的平方 |
SELECT 返回:25 |
系统函数 |
||
CONVERT |
用来转变数据类型 |
SELECT 返回:字符串12345 |
CURRENT_USER |
返回当前用户的名字 |
SELECT 返回:你登录的用户名 |
DATALENGTH |
返回用于指定表达式的字节数 |
SELECT 返回:7 |
HOST_NAME |
返回当前用户所登录的计算机名字 |
SELECT 返回:你所登录的计算机的名字 |
SYSTEM_USER |
返回当前所登录的用户名称 |
SELECT SYSTEM_USER 返回:你当前所登录的用户名 |
USER_NAME
|
从给定的用户 I D 返回用户名 |
SELECT 返回:从任意数据库中返回“dbo” |