Oracle支持的字符函数和它们的Microsoft SQL Server等价函数

Oracle支持的字符函数和它们的Microsoft SQL Server等价函数:

函数 Oracle Microsoft SQL Server

把字符转换为ASCII ASCII ASCII

字串连接 CONCAT (expression + expression)

把ASCII转换为字符 CHR CHAR

返回字符串中的开始字符(左起) INSTR CHARINDEX

把字符转换为小写 LOWER LOWER

把字符转换为大写 UPPER UPPER

填充字符串的左边 LPAD N/A

清除开始的空白 LTRIM LTRIM

清除尾部的空白 RTRIM RTRIM

字符串中的起始模式(pattern) INSTR PATINDEX

多次重复字符串 RPAD REPLICATE

字符串的语音表示 SOUNDEX SOUNDEX

重复空格的字串 RPAD SPACE

从数字数据转换为字符数据 TO_CHAR STR

子串 SUBSTR SUBSTRING

替换字符 REPLACE STUFF

将字串中的每个词首字母大写 INITCAP N/A

翻译字符串 TRANSLATE N/A

字符串长度 LENGTH DATELENGTH or LEN

列表中最大的字符串 GREATEST N/A

列表中最小的字符串 LEAST N/A

如果为NULL则转换字串 NVL ISNULL

日期函数

函数 Oracle Microsoft SQL Server

日期相加 (date column +/- value) or

ADD_MONTHS DATEADD

两个日期的差 (date column +/- value) or

MONTHS_BETWEEN DATEDIFF

当前日期和时间 SYSDATE GETDATE()

一个月的最后一天 LAST_DAY N/A

时区转换 NEW_TIME N/A

日期后的第一个周日 NEXT_DAY N/A

代表日期的字符串 TO_CHAR DATENAME

代表日期的整数 TO_NUMBER

(TO_CHAR)) DATEPART

日期舍入 ROUND CONVERT

日期截断 TRUNC CONVERT

字符串转换为日期 TO_DATE CONVERT

如果为NULL则转换日期 NVL ISNULL

 

转换函数

函数 Oracle Microsoft SQL Server

数字转换为字符 TO_CHAR CONVERT

字符转换为数字 TO_NUMBER CONVERT

日期转换为字符 TO_CHAR CONVERT

字符转换为日期 TO_DATE CONVERT

16进制转换为2进制 HEX_TO_RAW CONVERT

2进制转换为16进制 RAW_TO_HEX CONVERT

 

其它行级别的函数

函数 Oracle Microsoft SQL Server

返回第一个非空表达式 DECODE COALESCE

当前序列值 CURRVAL N/A

下一个序列值 NEXTVAL N/A

如果exp1 = exp2, 返回null DECODE NULLIF

用户登录账号ID数字 UID SUSER_ID

用户登录名 USER SUSER_NAME

用户数据库ID数字 UID USER_ID

用户数据库名 USER USER_NAME

当前用户 CURRENT_USER CURRENT_USER

用户环境(audit trail) USERENV N/A

在CONNECT BY子句中的级别 LEVEL N/A

 

合计函数

函数 Oracle Microsoft SQL Server

Average AVG AVG

Count COUNT COUNT

Maximum MAX MAX

Minimum MIN MIN

Standard deviation STDDEV STDEV or STDEVP

Summation SUM SUM

Variance VARIANCE VAR or VARP

Oracle还有一个有用的函数EXTRACT,提取并且返回日期时间或时间间隔表达式中特定的时间域:

EXTRACT(YEAR FROM 日期)