SQL Server 常用函数
SQL Server 有许多内置函数。
此引用包含 SQL Server 中的字符串、数字、日期、转换和一些高级函数。
SQL Server 字符串函数
| 函数 | 描述 |
|---|---|
| ASCII | 返回特定字符的 ASCII 值 |
| CHAR | 返回基于 ASCII 码的字符 |
| CHARINDEX | 返回子字符串在字符串中的位置 |
| CONCAT | 将两个或多个字符串加在一起 |
| Concat with + | 将两个或多个字符串加在一起 |
| CONCAT_WS | 将两个或多个字符串用分隔符加在一起 |
| DATALENGTH | 返回用于表示表达式的字节数 |
| DIFFERENCE | 比较两个 SOUNDEX 值,并返回一个整数值 |
| FORMAT | 使用指定格式格式化值 |
| LEFT | 从字符串中提取若干字符(从左开始) |
| LEN | 返回字符串的长度 |
| LOWER | 将字符串转换为小写 |
| LTRIM | 从字符串中删除前面(左边)的空格 |
| NCHAR | 返回基于数字代码的 Unicode 字符 |
| PATINDEX | 返回匹配模式在字符串中的位置 |
| QUOTENAME | 返回添加了分隔符的Unicode字符串,以使该字符串成为有效的 SQL Server 分隔标识符 |
| REPLACE | 用新的子字符串替换字符串中出现的所有子字符串 |
| REPLICATE | 将字符串重复指定的次数 |
| REVERSE | 反转字符串并返回结果 |
| RIGHT | 从字符串中提取多个字符(从右开始) |
| RTRIM | 从字符串中删除尾部(右边)空格 |
| SOUNDEX | 返回一个四个字符的代码以评估两个字符串的相似性 |
| SPACE | 返回指定数量的空格字符的字符串 |
| STR | 将数字作为字符串返回 |
| STUFF | 删除字符串的一部分,然后从指定位置开始将另一部分插入字符串 |
| SUBSTRING | 从字符串中提取一些字符 |
| TRANSLATE | 将第二个参数中指定的字符转换为第三个参数中指定的字符后,返回第一个参数中的字符串 |
| TRIM | 从字符串中删除前面空格和尾部空格(或其他指定字符) |
| UNICODE | 返回输入表达式的第一个字符的 Unicode 值 |
| UPPER | 将字符串转换为大写 |
SQL Server 数学/数字函数
| 函数 | 描述 |
|---|---|
| ABS | 返回数字的绝对值 |
| ACOS | 返回数字的反余弦 |
| ASIN | 返回数字的反正弦 |
| ATAN | 返回数字的反正切 |
| ATN2 | 返回两个数字的反正切 |
| AVG | 返回表达式的平均值 |
| CEILING | 返回大于等于指定数字的最小整数值 |
| COUNT | 返回 select 查询返回的记录数 |
| COS | 返回数字的余弦 |
| COT | 返回数字的余切 |
| DEGREES | 将弧度值转换为度 |
| EXP | 返回数字的指定次方(幂) |
| FLOOR | 返回小于等于指定数字的最大整数值 |
| LOG | 返回一个数字的自然对数,或返回一个数字到指定基数的对数 |
| LOG10 | 返回以 10 为底的数字的自然对数 |
| MAX | 返回一组值中的最大值 |
| MIN | 返回一组值中的最小值 |
| PI | 返回 PI 的值 |
| POWER | 返回数字的指定次方(幂) |
| RADIANS | 将度值转换为弧度 |
| RAND | 返回一个随机数 |
| ROUND | 将数字舍入到指定的小数位数 |
| SIGN | 返回数字的符号 |
| SIN | 返回数字的正弦值 |
| SQRT | 返回数字的平方根 |
| SQUARE | 返回数字的平方 |
| SUM | 计算一组值的总和 |
| TAN | 返回数字的正切值 |
SQL Server 日期函数
| 函数 | 描述 |
|---|---|
| CURRENT_TIMESTAMP | 返回当前日期和时间 |
| DATEADD | 在日期中添加时间/日期间隔,然后返回日期 |
| DATEDIFF | 返回两个日期之间的差值 |
| DATEFROMPARTS | 返回指定部分的日期(年、月和日值) |
| DATENAME | 返回日期的指定部分(作为字符串) |
| DATEPART | 返回日期的指定部分(作为整数) |
| DAY | 返回指定日期的月份日期 |
| GETDATE | 返回当前数据库系统日期和时间 |
| GETUTCDATE | 返回当前数据库系统 UTC 日期和时间 |
| ISDATE | 检查表达式,如果它是有效日期,则返回 1,否则返回 0 |
| MONTH | 返回指定日期的月份部分(从 1 到 12 的数字) |
| SYSDATETIME | 返回 SQL Server 的日期和时间 |
| YEAR | 返回指定日期的年份部分 |
SQL Server 高级函数
| 函数 | 描述 |
|---|---|
| CAST | 将值(任何类型)转换为指定的数据类型 |
| COALESCE | 返回列表中的第一个非空值 |
| CONVERT | 将值(任何类型)转换为指定的数据类型 |
| CURRENT_USER | 返回 SQL Server 数据库中当前用户的名称 |
| IIF | 如果条件为 TRUE,则返回一个值;如果条件为 FALSE,则返回另一个值 |
| ISNULL | 如果表达式为 NULL,则返回指定值,否则返回表达式 |
| ISNUMERIC | 测试表达式是否为数字 |
| NULLIF | 如果两个表达式相等,则返回 NULL |
| SESSION_USER | 返回 SQL Server 数据库中当前用户的名称 |
| SESSIONPROPERTY | 返回指定选项的会话设置 |
| SYSTEM_USER | 返回当前用户的登录名 |
| USER_NAME | 基于指定的 id 返回数据库用户名 |