PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie entferne ich einfache Anführungszeichen aus einer Tabelle in Postgresql?

Verwenden Sie besser replace() dazu:

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

Viel schneller als regexp_replace() und es ersetzt "global" - alle Vorkommen der Suchzeichenfolge. Die zuvor akzeptierte Antwort von @beny23 war in dieser Hinsicht falsch. Es ersetzt nur das erste Vorkommen, müsste lauten:

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

Beachten Sie den zusätzlichen Parameter 'g' für „weltweit“. Lesen Sie mehr über String-Funktionen im Handbuch .

Abgesehen davon:der kanonische (und SQL-Standard) Weg, um einfache Anführungszeichen zu maskieren (' ) in String-Literalen besteht darin, sie zu verdoppeln ('' ). Die Verwendung von Escape-Sequenzen im Posix-Stil funktioniert natürlich auch. Einzelheiten: