PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come rimuovo le virgolette singole da una tabella in postgresql?

Utilizzare meglio replace() per questo:

UPDATE tbl SET col = replace(col, '''', '');

Molto più veloce di regexp_replace() e sostituisce "globalmente" - tutte le occorrenze della stringa di ricerca. La risposta di @beny23 precedentemente accettata aveva torto in questo senso. Ha sostituito solo le prime occorrenze, dovrebbe essere:

UPDATE tbl SET col = regexp_replace(col, '''', '', 'g');

Nota il parametro aggiuntivo 'g' per "globale". Leggi le funzioni di stringa nel manuale .

A parte:il modo canonico (e standard SQL) per evitare le virgolette singole (' ) in stringhe letterali è raddoppiarli ('' ). Anche l'uso delle sequenze di escape in stile Posix funziona, ovviamente. Dettagli: