unicode and =

From: "Grant Morgan" <grant(at)ryuuguu(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: unicode and =
Date: 2005-06-20 00:54:33
Message-ID: op.ssm8s7zbuogdv0@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


= is not working on a char(30) coloumn for me.
I want to find rows with equal name.
I have my database set to unicode.

SQL1
SELECT h1.key,h1.name,h2.key,h2.name
FROM table1 as h1, table1 as h2
WHERE h1.name=h2.name
and h1.OID = 730716

produces result rows where name doe not match
name is multibyte UTF-8 values.

SQL1
SELECT h1.key,h1.name,h2.key,h2.name
FROM table1 as h1, table1 as h2
WHERE h1.key=h2.key
and h1.OID = 730716

produces correct results.
key is single byte UTF-8 values only (digits only)

I have a hash index on name, I dropped it and got a different but still wrong result.
key is part of a multicolumn primary kay

version 8.0.3 - gcc 3.4.3 fedora 3

Any suggestion on how to match multibyte characters? Do I need to use a differnt comparison operator?

Thanks,
Grant

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2005-06-20 01:08:54 Re: Insert behavior in transaction
Previous Message Tom Lane 2005-06-19 23:46:06 Re: subqueries