SQLSERVER中常用的函数
【原创】
一、函数列表
[1.字符串函数]
函数名 | 描述 | 举例 |
CHARINDEX |
用来寻找一个指定的字符串在另一个字符串中的起始位置 |
SELECT CHARINDEX('ACCP','My Accp Course',1 ) 返回:4 |
LEN | 返回传递给它的字符串长度 |
SELECT LEN('SQL Server课程') 返回:12 |
LOWER | 把传递给它的字符串转换为小写 |
SELECT LOWER('SQL Server课程') 返回:sql server课程 |
UPPER | 把传递给它的字符串转换为大写 |
SELECT UPPER('sql server课程') 返回:SQL SERVER课程 |
LTRIM | 清除字符左边的空格 |
SELECT LTRIM (' 周智宇 ') 返回:周智宇 (后面的空格保留) |
RTRIM | 清除字符右边的空格 |
SELECT RTRIM (' 周智宇 ') 返回: 周智宇(前面的空格保留) |
RIGHT |
从字符串右边返回指定数目的字符 |
SELECT RIGHT('买卖提.吐尔松',3) 返回:吐尔松 |
REPLACE |
替换一个字符串中的字符 |
SELECT REPLACE('莫乐可切.杨可','可','兰') 返回:莫乐兰切.杨兰 |
STUFF |
在一个字符串中,删除指定长度的字符,并在该位置插入一个新的字符串 |
SELECT STUFF('ABCDEFG', 2, 3, '我的音乐我的世界') 返回:A我的音乐我的世界EFG |
[2.日期函数]
函数名 | 描述 | 举例 |
GETDATE |
取得当前的系统日期 |
SELECT GETDATE() 返回:今天的日期 |
DATEADD |
将指定的数值添加到指定的日期部分后的日期 |
SELECT DATEADD(mm,4,’01/01/99’) 返回:以当前的日期格式返回05/01/99 |
DATEDIFF |
两个日期之间的指定日期部分的区别 |
SELECT DATEDIFF(mm,’01/01/99’,’05/01/99’) 返回:4 |
DATENAME |
日期中指定日期部分的字符串形式 |
SELECT DATENAME(dw,’01/01/2000’) 返回:Saturday |
DATEPART |
日期中指定日期部分的整数形式 |
SELECT DATEPART(day, ’01/15/2000’) 返回:15 |
[3.数学函数]
函数名 | 描述 | 举例 |
ABS |
取数值表达式的绝对值 |
SELECT ABS(-43) 返回:43 |
CEILING |
返回大于或等于所给数字表达式的最小整数 |
SELECT CEILING(43.5) 返回:44 |
FLOOR |
取小于或等于指定表达式的最大整数 |
SELECT FLOOR(43.5) 返回:43 |
POWER |
取数值表达式的幂值 |
SELECT POWER(5,2) 返回:25 |
ROUND |
将数值表达式四舍五入为指定精度 |
SELECT ROUND(43.543,1) 返回:43.5 |
Sign |
对于正数返回+1,对于负数返回-1,对于0 则返回0 |
SELECT SIGN(-43) 返回:-1 |
Sqrt |
取浮点表达式的平方根 |
SELECT SQRT(9) 返回:3 |
[4.系统函数]
函数名 |
描述 | 举例 |
CONVERT |
用来转变数据类型 |
SELECT CONVERT (VARCHAR (5),12345) 返回:字符串12345 |
CURRENT_USER |
返回当前用户的名字 |
SELECT CURRENT_USER 返回:你登录的用户名 |
DATALENGTH |
返回用于指定表达式的字节数 |
SELECT DATALENGTH ('中国A盟') 返回:7 |
HOST_NAME |
返回当前用户所登录的计算机名字 |
SELECT HOST_NAME() 返回:你所登录的计算机的名字 |
SYSTEM_USER |
返回当前所登录的用户名称 |
SELECT SYSTEM_USER 返回:你当前所登录的用户名 |
USER_NAME |
从给定的用户I D返回用户名 |
SELECT USER_NAME(1) 返回:从任意数据库中返回“dbo” |
二、情景应用举例
有时间在把情景应用的实例写进来