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

SQL - Come sfuggire alle parentesi in PostgreSQL

Usa la barra rovesciata per sfuggire alle parentesi. Tieni presente che se standard_conforming_strings parametro è impostato su off (che è il comportamento predefinito fino a PostgreSQL 9.1) è necessario utilizzare due barre rovesciate \\ .

Generalmente ci sono tre approcci per sfuggire alle parentesi:

  • ordinario 'pattern' sintassi, che dipende dall'impostazione standard_conforming_strings
  • stringa di escape costante ad es. E'pattern'
  • Costanti stringa tra virgolette $$pattern$$ o $sometext$pattern$sometext$

Il primo è SQL standard (specialmente con standard_conforming_strings), gli altri sono estensioni PostgreSQL. Scegli il metodo che preferisci.

Ecco alcuni esempi:

SET standard_conforming_strings = 0;

SELECT
'Antonio De Sant''Ana Galvao Av Frei (Av 01 Parte A)'
~* 
'Antonio De Sant\'Ana Galvao Av Frei \\(Av 01 Parte A\\)'

SET standard_conforming_strings = 1;

SELECT
'Antonio De Sant''Ana Galvao Av Frei (Av 01 Parte A)'
~* 
'Antonio De Sant''Ana Galvao Av Frei \(Av 01 Parte A\)'

SELECT
'Antonio De Sant''Ana Galvao Av Frei (Av 01 Parte A)'
~* 
E'Antonio De Sant\'Ana Galvao Av Frei \\(Av 01 Parte A\\)'

SELECT
'Antonio De Sant''Ana Galvao Av Frei (Av 01 Parte A)'
~* 
$$Antonio De Sant'Ana Galvao Av Frei \(Av 01 Parte A\)$$

SET standard_conforming_strings = default;