在 PGSQL 上更新值时将 _ 替换为 /

Replace _ to / while update value on PGSQL

这里是我的 table 值列表:树

• TREE_2ED • TREE_2ED_CIN • TREE_2ED_EM • TREE_2ED_ENV • TREE_2ED_SRF • TREE_DA • TREE_DA_CID • TREE_DA_DSR • TREE_DA_EM • TREE_DA_EST • TREE_DA_REP • TREE_DAC • TREE_DAC_EM • TREE1_DAC_EM • TREE2_DAC_EM

我想要什么:

在更新值时替换所有以“TREE%”开头的值,将“_”替换为“/”。

示例:

• 初始值:TREE_2ED

我做了什么:

UPDATE tree
    SET value = (CASE WHEN value LIKE 'TREE%'
                     THEN ''
                END)

是否可以使用 pgsql 执行此操作?

我认为您正在寻找过滤后的更新:

UPDATE tree
    SET value = REPLACE(value, '_', '/')
    WHERE value LIKE 'TREE%';

您可以使用replace函数:

UPDATE tree
SET    value = REPLACE(value, '_', '/')
WHERE  value LIKE 'TREE%'