From: | David Fetter <david(at)fetter(dot)org> |
---|---|
To: | SF Postgres <sfpug(at)postgresql(dot)org> |
Subject: | Re: LIKE vs = |
Date: | 2004-08-23 17:46:20 |
Message-ID: | 20040823174620.GA8144@fetter.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | sfpug |
On Mon, Aug 23, 2004 at 10:39:38AM -0700, David Wheeler wrote:
> Hi All,
>
> I'm having some trouble with multibyte characters and LIKE. We've been
> using LIKE instead of = for string queries for a long time, as it gives
> us flexibility to use wildcards such as "%" when we need to and get the
> same results as with = by not using them. But I've just found that it
> sometimes doesn't work properly:
>
> bric=# select version();
> version
> ------------------------------------------------------------------------
> ---------------------------------
> PostgreSQL 7.4.2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.2.2
> 20030222 (Red Hat Linux 3.2.2-5)
> (1 row)
>
> bric=# select * from keyword where name = 'ºÏÇÑÀÇ';
> id | name | screen_name | sort_name | active
> ------+--------+-------------+-----------+--------
> 1218 | ±¹¹æºñ | ±¹¹æºñ | ±¹¹æºñ | 1
> (1 row)
>
> bric=# select * from keyword where name LIKE 'ºÏÇÑÀÇ';
> id | name | screen_name | sort_name | active
> ----+------+-------------+-----------+--------
> (0 rows)
>
> Any idea why = works here and LIKE wouldn't?
Does LIKE when you stick wildcards on the front & back of the
expression?
SELECT * FROM keyword WHERE name LIKE '%ºÏÇÑÀÇ%';
Cheers,
D
--
David Fetter david(at)fetter(dot)org http://fetter.org/
phone: +1 510 893 6100 mobile: +1 415 235 3778
Remember to vote!
From | Date | Subject | |
---|---|---|---|
Next Message | David Wheeler | 2004-08-23 17:57:09 | Re: LIKE vs = |
Previous Message | Josh Berkus | 2004-08-23 17:42:17 | Re: LIKE vs = |