
oracle中修改批量修改部分字段
UPDATEPROD_TEMPTSETT.PROD_NAME=REGEXP_REPLACE(T.PROD_NAME,'(6826)','')WHERET.PROD_NAM...
UPDATE PROD_TEMP T
SET T.PROD_NAME= REGEXP_REPLACE(T.PROD_NAME, '(6826)', ' ')
WHERE T.PROD_NAME LIKE '%6826%'
AND T.PROD_CLASS_NAME LIKE '%6826%'
我想要的结果是 名称后面的东西全部去掉,比如:北京(朝阳),改为:北京,而执行我的上述语句后得到结果为:北京()。哪位大神帮忙啊 展开
SET T.PROD_NAME= REGEXP_REPLACE(T.PROD_NAME, '(6826)', ' ')
WHERE T.PROD_NAME LIKE '%6826%'
AND T.PROD_CLASS_NAME LIKE '%6826%'
我想要的结果是 名称后面的东西全部去掉,比如:北京(朝阳),改为:北京,而执行我的上述语句后得到结果为:北京()。哪位大神帮忙啊 展开
2013-02-26
展开全部
因为 () 小括号在正则表达式中是有特殊含义的,表示进行分组,所以需要对其进行转义
使用 \(6826\) 进行替换就可以了
UPDATE PROD_TEMP T
SET T.PROD_NAME= REGEXP_REPLACE(T.PROD_NAME, '\(6826\)', ' ')
WHERE T.PROD_NAME LIKE '%6826%'
AND T.PROD_CLASS_NAME LIKE '%6826%'
使用 \(6826\) 进行替换就可以了
UPDATE PROD_TEMP T
SET T.PROD_NAME= REGEXP_REPLACE(T.PROD_NAME, '\(6826\)', ' ')
WHERE T.PROD_NAME LIKE '%6826%'
AND T.PROD_CLASS_NAME LIKE '%6826%'
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询