oracle的ASCII、ASCIISTR函数

oracle的ASCII、ASCIISTR函数

1、ASCII函数
作用是将字符转换为ascii码值,中文没有ascii码值,应该是转成某一编码再取编码的ascii值。

2、ASCIISTR函数
ASCIISTR函数,参数是一个字符串,如果这个字符在ASCII码表中有,则转成ASCII表中的字符。
如果没有,则转成\xxxx格式,xxxx是UTF-16的编码。
如果表中只有中文和英文、数字等字符,则可以用\来判断是否带有中文。
举例:
select * from bacs.tcim_per_account where ASCIISTR(USER_ID) LIKE ‘%\%’;

3、对比区别

select ASCIISTR('A'), ASCIISTR('b'), ASCIISTR('才'), ASCII('A'), ASCII('b'), ASCII('才') from dual;
ASCIISTR('A') ASCIISTR('B') ASCIISTR('才') ASCII('A') ASCII('B') ASCII('才')
------------- ------------- ------------- ---------- ---------- ----------
A             b             \624D                 65         98   15108493