Re: [HACKERS] escape character \ - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: [HACKERS] escape character \
Date
Msg-id 199804270334.XAA20328@candle.pha.pa.us
Whole thread Raw
In response to escape character \  ("Jose' Soares Da Silva" <sferac@proxy.bazzanese.com>)
Responses Re: [HACKERS] escape character \
List pgsql-hackers
>
> Seems there's a bug using ESCAPE character (\) on LIKE clause:
>
> prova=> create table tmp ( a text);
> CREATE
> prova=> insert into tmp values('\\');
> INSERT 178729 1
> prova=> select * from tmp where a = '\\';
> a
> --
> \\
> (1 row)
>
> prova=> select * from tmp where a like '%\\%';
> a
> -
> (0 rows)
>
> prova=> select * from tmp where a like '%\\\\%';
> a
> --
> \\
> (1 row)
>
> -- how many \ do I have to use? 1, 2, 3, 4 or 5 ???
>
> prova=> select * from tmp where a like '%\\\\\%';
> a
> --
> \\
> (1 row)
>                                                   Jose'

The problem is that that \\ is need to input a backslash, and we support
\ to escape special characters like %, so \\\\ is need to test for a
backslash in a LIKE.  Is this not standard?  I suppose not.  Should we
remove the special use of \ in LIKE?  Comments?


--
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)

pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] Agregates in update?
Next
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] Bug or Short between my brain and the keyboard?