Re: BUG #5737: LIKE and ILIKE strange behaviour - Mailing list pgsql-bugs

From John R Pierce
Subject Re: BUG #5737: LIKE and ILIKE strange behaviour
Date
Msg-id 4CCE3B72.2090800@hogranch.com
Whole thread Raw
In response to BUG #5737: LIKE and ILIKE strange behaviour  ("Radu Ilies" <ilies.radu@gmail.com>)
List pgsql-bugs
On 10/31/10 12:28 PM, Radu Ilies wrote:
> id, char[25]
> name, text
>
> The first row is:
>
> id='radu'
> name='Radu Ilies'
>
> The following queries does not find any result (fail):
> SELECT * FROM my_table WHERE id LIKE 'radu'
> SELECT * FROM my_table WHERE id ILIKE 'radu'
>

'radu'::char[25] ==>  'radu_____________________'     (21 spaces).

the = equality coerces the 'radu'::text to 'radu
'::char[25] before doing the comparision.
LIKE/ILIKE doesn't think 'radu_____________________' is LIKE 'radu'

use TEXT for character types unless you have a very specific requirement
to limit them to a maximum length.

pgsql-bugs by date:

Previous
From: "Radu Ilies"
Date:
Subject: BUG #5737: LIKE and ILIKE strange behaviour
Next
From: Heikki Linnakangas
Date:
Subject: ecpg preprocessor regression in 9.0