oracle 如何判断字符串中是否包含中文?超级简单!

 

1.情景展示

  如何快速的判断出指定字符串中是否包含中文呢? 

2.解决方案

  通过length()和lengthb()函数的比对结果进行判断。 

  lengthb(string)计算string所占的字节长度:返回字符串的字节长度,单位是字节;

  length(string)计算string所占的字符长度:返回字符串的字符长度,单位是字符。

  在英文中,一个英文字符仅占一个字节;

  在中文中,一个中文字符至少要占两个字节,一个汉字在Oracle数据库里占多少字节跟数据库的字符集有关,UTF8时,长度为三。

  所以,可以通过判断两个函数的返回值是否相等,就能判断出字符串中是否包含中文。

  length('string')=lengthb('string')

SELECT DECODE(LENGTH('string'),LENGTHB('string'),'不包含','包含') 是否包含中文 FROM DUAL

 

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

 相关推荐:

 

 

转载于:https://www.cnblogs.com/Marydon20170307/p/10978399.html

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值