跪求oracle数据库表字段隐藏字符处理解决方案

yii_java 2012-05-02 12:13:21
跪求大牛解决oracle数据库中隐藏字符处理方案,例如:select * from prpcinsured where insuredname like '徐淑平%'
select * from prpcinsured where insuredname = '徐淑平',这种数据中文名称里既没有回车也没用换行符,用精确的“=” 号查询不出。要用“like”才能查出。然后用以下sql查询:select trim(prpcinsured.insuredname),dump(prpcinsured.insuredname),lengthb(prpcinsured.insuredname) from prpcinsured where insuredname like '袁吉和%' “ 1 袁吉和 Typ=1 Len=9: 212,172,188,170,186,205,0,0,0 9”数据库中对应3个函数的值。这些字符导致XML不能识别。跪求大牛给予解决方案。
...全文
613 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
APHY 2012-05-02
  • 打赏
  • 举报
回复
--替换掉特殊字符不就可以了,使用正则表达式测试下
SELECT regexp_replace(insuredname, '[^[:digit:]]', '')
FROM prpcinsured
WHERE insuredname like '袁吉和%'


另:你的数据库是哪个版本?10G以下好像不支持
yii_java 2012-05-02
  • 打赏
  • 举报
回复
vastm:你这个替换函数用了没有效果,这些特殊字符是excel导入数据是带入的,不止只是数字。
秋雨飘落 2012-05-02
  • 打赏
  • 举报
回复
上面有特殊值,
把数据更新一下
啊彪123 2012-05-02
  • 打赏
  • 举报
回复
如果有性能要求,还是按楼上的做法,取替换吧!

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧