《SQL Server应用开发》
第四章 数据查询I
在查询中使用函数:[30分钟]
级别:【中】
知识点的引入:
与C语言类似,SQL_也提供了一些内部函数,不同类别的函数可以和SQL_Server的SELECT语句联合使用,也可以与UPDATE和INSERT一起使用。
讲解:
函数一般分为四类:字符串函数,日期函数,数学函数,系统函数
字符串函数:
函数名 | 描述 | 举例 |
CHARINDEX | 用来寻找一个指定的字符串在另一个字符串中的起始位置 | Select charindex(‘accp’,’my accp course’,1) 返回4 |
LEN | 返回传递给它的字符串长度 | Select len(‘sql server’) 返回10 |
LOWER | 把传递给它的字符串转为小写 | Select lower(‘SQLSERVER’) 返回sqlserver |
UPPER | 把传递给它的字符串转为大写 | Select upper(‘sqlserver’) 返回SQLSERVER |
RIGHT | 从字符串右边返回指定数据的字符 | SELECT right(‘买卖题.什么东西’,4) 返回:什么东西 |
REPLACE | 替换一个字符串中的字符 | SELECT REPLACE (‘我们中国人’,‘我们’,‘我们都是’) 返回:我们都是中国人 |
日期函数:
日期函数用于操纵日期值,我们不能直接对日期运用数学函素。日期函数帮助我们提取日期值中的日月年。
函数名 | 描述 | 举例 |
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 |
数学函数:
数学函数用于对数值进行代数运算。
函数名 | 描述 | 举例 |
ABS | 取绝对值 | Select abs(-125) 返回125 |
POWER | 取数值的幂 | SELECT POWER(5,2) 返回:25 |
SQRT | 取数值的开平方根 | SELECT SQRT(25) 返回5 |
系统函数
系统函数用来获取有关SQLSERVER中对象和设置的系统信息。
函数名 | 描述 | 举例 |
CONVERT | 用来转变数据类型 | SELECT CONVERT(VARCHAR(5),12345) 返回字符串12345 |
CURRENT_USER | 返回当前用户的名字 | SELECT CURRENT_NAME 返回你登录的用户名 |
HOST_NAME | 返回当前用户登录计算机名称 | SELECT HOST_NAME() 返回你登录计算机名称 |
SYSTEM_USER | 返回当前所登录的用户名称 | SELECT SYSTEM_NAME 返回你当前登录的用户名 |
USER_NAME | 从给定的用户id返回用户 | SELECT USER_NAME(1) 返回‘dbo’ |