From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | Markus <markus(dot)herven(at)outpost24(dot)com> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #5478: ILIKE operator returns wrong result |
Date: | 2010-05-28 14:06:29 |
Message-ID: | 201005281406.o4SE6T208457@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Markus wrote:
>
> The following bug has been logged online:
>
> Bug reference: 5478
> Logged by: Markus
> Email address: markus(dot)herven(at)outpost24(dot)com
> PostgreSQL version: PostgreSQL 8.4.
> Operating system: Ubuntu 10.04
> Description: ILIKE operator returns wrong result
> Details:
>
> The following query
>
> select 'ba' ilike '%__%';
>
> return true as expected in 8.2 but false in 8.4.
I can confirm the odd behavior in current CVS:
test=> select 'ba' ilike '%__%';
?column?
----------
f
(1 row)
test=> select 'ba' like '__';
?column?
----------
t
(1 row)
test=> select 'ba' like '__%';
?column?
----------
t
(1 row)
test=> select 'ba' like '%_%';
?column?
----------
t
(1 row)
It seems to be the leading '%' it does not like. Our docs clearly state
your syntax is recommended:
LIKE pattern matching always covers the entire string. Therefore, to
match a sequence anywhere within a string, the pattern must start and
end with a percent sign.
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-05-28 14:13:19 | Re: BUG #5480: Autovacuum interferes with operations (e.g. truncate) on very large databases |
Previous Message | Sakari Maaranen | 2010-05-28 13:02:57 | BUG #5480: Autovacuum interferes with operations (e.g. truncate) on very large databases |