1
我想更换一个领域内的一些文本功能,所以我有以下语句:sql中替换匹配整个单词
UPDATE INVENTORY
SET INV_DESCRIPTION = REPLACE(INV_DESCRIPTION, '5 ml', '5ml (1/6oz)')
问题在于这样一个事实:这种说法会替换字符串,如“5毫升''15毫升''150毫升'等,与替换字符串。我希望这个功能匹配全词,只是找“5毫升”
我想更换一个领域内的一些文本功能,所以我有以下语句:sql中替换匹配整个单词
UPDATE INVENTORY
SET INV_DESCRIPTION = REPLACE(INV_DESCRIPTION, '5 ml', '5ml (1/6oz)')
问题在于这样一个事实:这种说法会替换字符串,如“5毫升''15毫升''150毫升'等,与替换字符串。我希望这个功能匹配全词,只是找“5毫升”
你可以添加一个WHERE
条款,应该让你很接近:
...Your Current Query...
WHERE INV_DESCRIPTION LIKE '5ml%'
OR INV_DESCRIPTION LIKE '% 5ml%'
这只会更新与开始记录5ml
或有5ml
之前有一个空格,这将排除15ml
或25ml
等
这是假设SQL Server。
好的,谢谢这对我很好 – seb
您正在使用哪种数据库软件?在Oracle regexp_replace会完成你想要的。 – Samuel
您尝试更新的整个字段(INV_DESCRIPTION)是什么样的?它一致吗? – Simon
你好Samuel叫做'Pervasive' – seb