ESCAPE

L’identificatore ESCAPE permette di trattare un qualsiasi carattere dopo il carattere backslash come un simbolo non speciale. Ad esempio i simboli _ e % vengono filtrati nelle query  e non interpetrati letteralmente come caratteri.
Ad esempio consideriamo la seguente tabella ed eseguiamo la prima query.

select * from prova_escape;
CODICE_EST
----------------
F%_B978
F%B978
AB_687
GR%29E

select * from prova_escape WHERE codice_est LIKE '%_%';
CODICE_EST
---------------
F%_B978
F%B978
AB_687
GR%29E

Il simbolo "_" non viene considerato letteralmente e la query restituisce tutte le righe della colonna. Se invece vogliamo estrarre solo i risultati che contengono il carattere "_" dobbiamo usare l'ESCAPE.

select * from prova_escape WHERE codice_est LIKE '%\_%'  ESCAPE '\';
CODICE_EST
---------------
F%_B978
AB_687

Idem se vogliamo estarre le righe che contengono il carattere speciale "%".
select * from prova_escape WHERE codice_est LIKE '%\%%'  ESCAPE '\';
CODICE_EST
----------------
F%_B978
F%B978
GR%29E

Post popolari in questo blog

Create e Drop Pluggable Database

ORA-12154: TNS: il listener non è attualmente a conoscenza del servizio richiesto nel descrittore di connessione