Using latest CVS sources with Linux 2.4 i586: Comparing using domains versus traditional explicit field types. Here's the control test:
test=# create table t1 (f varchar(5) not null); CREATE test=# insert into t1 values ('2'); INSERT 16626 1 test=# select * from t1 where f='2'; f --- 2 (1 row) If I create a VARCHAR domain, everything works as expected. test=# create domain typ varchar(5) not null; CREATE DOMAIN test=# create table t2 (f typ); CREATE test=# insert into t2 values ('2'); INSERT 16627 1 test=# select * from t2 where f='2'; f --- 2 (1 row) Here's a control test for the same thing, except with CHAR: test=# create table t1 (f char(5) not null); CREATE test=# insert into t1 values ('2'); INSERT 16639 1 test=# select * from t1 where f='2'; f ------- 2 (1 row) However, if I create a CHAR domain, I'm unable to query the value from the table: test=# create domain typ char(5) not null; CREATE DOMAIN test=# create table t2 (f typ); CREATE test=# insert into t2 values ('2'); INSERT 16640 1 test=# select * from t2 where f='2'; f --- (0 rows) Even if I coerce the value to the correct domain: test=# select * from t2 where f='2'::typ; f --- (0 rows) However, this works: test=# select * from t2 where f='2'::char; f ------- 2 (1 row) Is this a bug? Is this correct behavior? Am I misunderstanding this? Thanks! Joel BURTON | [EMAIL PROTECTED] | joelburton.com | aim: wjoelburton Knowledge Management & Technology Consultant ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/users-lounge/docs/faq.html