如何判断一个字符是否含有中文汉字
可以使用LENGTH、LENGTHB和TO_SINGLE_BYTE函数来解决这个问题。
LENGTH:返回以字符为单位的长度
LENGTHB:返回以字节为单位的长度
TO_SINGLE_BYTE:将字符串中的多字节转化为单字节字符。
–测试原数据
prompt Importing table TEST…
set feedback off
set define off
insert into TEST (NAME)
values (‘123’);
insert into TEST (NAME)
values (‘ABC’);
insert into TEST (NAME)
values (‘123ABC’);
insert into TEST (NAME)
values (‘123Z中ABC’);
prompt Done.
–验证SQL
SELECT *
FROM TEST
WHERE LENGTHB(NAME) <> LENGTH(NAME)
AND LENGTHB(TO_SINGLE_BYTE(NAME)) <> LENGTH(TO_SINGLE_BYTE(NAME))