MasterSinge
MasterSinge

Reputation: 675

Replace _ to / while update value on PGSQL

Here the list of my value of table : tree

• 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

What I want :

While updating value replace all my value who begin with "TREE%" replace the "_" to "/".

Example :

• initial value : TREE_2ED

What I have done :

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

Is it possible to do this operation with pgsql ?

Upvotes: 0

Views: 33

Answers (2)

Mureinik
Mureinik

Reputation: 311883

You can use the replace function:

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

Upvotes: 2

Gordon Linoff
Gordon Linoff

Reputation: 1270513

I think you are looking for a filtered update:

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

Upvotes: 1

Related Questions