Re: LIKE predicate and '\' character - Mailing list pgsql-hackers

From Karel Zak
Subject Re: LIKE predicate and '\' character
Date
Msg-id 20011107151110.C6354@zf.jcu.cz
Whole thread Raw
In response to LIKE predicate and '\' character  ("Andy Hallam" <ahm@exel.co.uk>)
List pgsql-hackers
On Wed, Nov 07, 2001 at 12:56:46PM -0000, Andy Hallam wrote:
The PostgreSQL parser "eat" one '\' on arbitrary place in query. Youyou want put '\' to some function (operator) you
mustuse '\\'. 
 

test=# select '\\';
?column?
----------
\
(1 row)

test=# select '\\\\';
?column?
----------
\\
(1 row)

test=# select 'hello\\pg' like 'hello\\pg';
?column?
----------
f
(1 row)

test=# select 'hello\\pg' like 'hello\\\\pg';
?column?
----------t(1 row)       Karel


> PostgreSQL - 7.1.3  (installed on Linux 2.4.2-2)
> PSQLODBC.DLL - 07.01.0007
> Visual C++ - 6.0
> 
> I sent a previous mail with regard to using the '\' (backslash) character in
> an SQL SELECT statement.
> The outcome was that postgres does not escape the '\' itself - I need to do
> it myself before submitting the SQL - fair enough, I now do this.
> 
> i.e
> instead of
>     mydb=# SELECT * FROM users WHERE id = 'WORKGROUP\me';
> I now do
>     mydb=# SELECT * FROM users WHERE id = 'WORKGROUP\\me';
> 
> BUT, if I use the LIKE predicate I have to escape the escape.
> 
> i.e
>     mydb=# SELECT * FROM users WHERE id LIKE 'WORKGROUP\\\\me';
> 
> 
> Now this must be treated as a bug.
> As you can see it is not an error with the PSQLODBC driver as I ran the SQL
> from the command line with the same results.
> I am presuming that the backend parsing logic around the LIKE prodicate is
> ignoring the '\'.
> 
> Is anyone working on this ?. Can anyone send me a fix, as without this I'm
> screwed.
> 
> Thanks for any help
> 
> Andy.
> ahm@exel.co.uk
> 
> 
> 
> 
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

-- Karel Zak  <zakkr@zf.jcu.cz>http://home.zf.jcu.cz/~zakkr/C, PostgreSQL, PHP, WWW, http://docs.linux.cz,
http://mape.jcu.cz


pgsql-hackers by date:

Previous
From: "g.p.ciceri"
Date:
Subject: GSL (GNU Scientific library, numerical routines) interface as a contributed module: pg-GSL.0.0.0
Next
From: Bruce Momjian
Date:
Subject: Re: GSL (GNU Scientific library, numerical routines) interface