以下函数均没有对参数做说明,使用的使用需要了解其参数内容
数据库 | sql server | mysql | oracle | 举例 |
获得当前系统时间 | getdate() | now() | sysdate 注意不是函数 | |
获得唯一的GUID值 | newid() | uuid() | sys_guid() | |
格式化日期 | CONVERT() | date_format(),mysql 允许将日期当做字符串来处理 | to_char(sysdate,'yyyyMMdd HH24miss') | CONVERT(varchar(10),a.CSDate,120),date_format(PSdate,'%Y-%m-%d') |
连接字符串 | +号 | CONCAT() | ||号 | |
数字转字符串 | str() | cast() | cast (123 as char(3)) | |
如果为null输出为其他指定值 | ISNULL() | IFNULL() | nvl() | nvl(null,'wer')输出'wer' |
截取字符串函数 | right()/left():从右边/左边开始截取几位 | right()/left():从右边/左边开始截取几位/substr()从第几位截取几位 | substr()从第几位截取几位 | substr('adfwrwrw',2,5)输出dfwrw,下标均从1开始 |
复制函数 | replicate() | / | / | mysql 和oracle 暂时没发现 |
不够指定位数补上指定值 | 没有对应的函数需要转换一下,先用复制函数复制给定补全的内容,在和对象进行连接,最后进行截取需要的长度: right(replicate(补全的内容',要求的长度)+'操作对象',要求的长度) | lpad/rpad | lpad/rpad | lpad('2342',9,1), right(replicate('1',9)+'2342',9)均 输出111112342
|
去空格 | ltrim()/rtrim() | trim()/ltrim()/rtrim() | trim()/ltrim()/rtrim() | |
将指定内容替换为指定内容 | replace() | replace() | replace() | select replace('wer-wr-wrw-rw-r-wer','-','') 输出werwrwrwrwrwer |
大小写转换 | lower(),uppper() | lower(),uppper() | lower(),uppper() |