Beter gebruik replace() hiervoor:
UPDATE tbl SET col = replace(col, '''', '');
Veel sneller dan regexp_replace()
en het vervangt "globaal" - alle exemplaren van de zoekreeks. Het eerder geaccepteerde antwoord van @beny23
was in dit opzicht fout. Het verving alleen de eerste voorvallen, zou moeten zijn:
UPDATE tbl SET col = regexp_replace(col, '''', '', 'g');
Let op de extra parameter 'g'
voor "wereldwijd". Lees over stringfuncties in de handleiding
.
Terzijde:de canonieke (en SQL-standaard) manier om enkele aanhalingstekens te ontsnappen ('
) in letterlijke tekenreeksen is om ze te verdubbelen (''
). Het gebruik van ontsnappingsreeksen in Posix-stijl werkt natuurlijk ook. Details: