序號 |
函數功能 |
SQL Server用法 |
Oracle用法 |
1 |
求字元序號 |
select ascii(‘a‘) |
select ascii(‘a‘) value from dual |
2 |
從序號求字元 |
select char(97) value |
select chr(97) value from dual |
3 |
串連 |
select ‘11‘+‘22‘+‘33‘ value |
select CONCAT(‘11‘,‘22‘)||33 value from dual |
4 |
子串位置 |
select charindex(‘s‘,‘sdsq‘,2) value |
select instr(‘sdsq‘,‘s‘,2) value from dual |
5 |
模糊子串的位(返回2,參數去掉中間%則返回7) |
select patindex(‘%d%q%‘,‘sdsfasdqe‘) value |
select INSTR(‘sdsfasdqe‘,‘sd‘,1,2) value from dual 返回6 |
6 |
求子串 |
select substring(‘abcd‘,2,2) value |
select substr(‘abcd‘,2,2) value from dual |
7 |
子串代替(返回aijklmnef) |
SELECT STUFF(‘abcdef‘, 2, 3, ‘ijklmn‘) value |
SELECT Replace(‘abcdef‘, ‘bcd‘, ‘ijklmn‘) value from dual |
8 |
子串全部替換 |
沒發現 |
select Translate(‘fasdbfasegas‘,‘fa‘,‘我‘ ) value from dual |
9 |
長度 |
Len或datalength |
length |
10 |
大小寫轉換 |
lower,upper |
lower,upper |
11 |
單字首大寫 |
沒發現 |
select INITCAP(‘abcd dsaf df‘) value from dual |
12 |
左補空格 |
select space(10)+‘abcd‘ value |
select LPAD(‘abcd‘,14) value from dual |
13 |
右補空格 |
select ‘abcd‘+space(10) value |
select RPAD(‘abcd‘,14) value from dual |
14 |
刪除空格 |
ltrim,rtrim |
ltrim,rtrim,trim |
15 |
重複字串 |
select REPLICATE(‘abcd‘,2) value |
lpad(‘d‘,6,‘0‘),rpad(‘d’,6,’0’) |
16 |
發音相似性比較(這兩個單詞傳回值一樣,發音相同) |
SELECT SOUNDEX (‘Smith‘), SOUNDEX (‘Smythe‘) |
SELECT SOUNDEX (‘Smith‘), SOUNDEX (‘Smythe‘) from dual |