首页 > 解决方案 > 如何在Oracle中剪切最右边的字符串?

问题描述

我正在尝试清理地址数据,特别是删除最右边的字符串,如“road”、“rd”、“street”、“ave”等(所以我要删除的字符数不同)。我正在使用甲骨文。也想知道我如何在 Excel 中做到这一点。将不胜感激任何帮助!

谢谢!

标签: sqloracle

解决方案


一种可能性是regexp_replace()

select regexp_replace(str, ' [^ ]+$', '')
from (select 'abcd asdf 90909 ddd' as str from dual) x

方便regexp_replace()的是您可以更明确地了解要替换的字符串:

select regexp_replace(str, ' (road|rd|street|ave)$', '')

推荐阅读