Comparing Numeric and Double Precision (float8).. - Mailing list pgsql-sql

From Terry Yapt
Subject Comparing Numeric and Double Precision (float8)..
Date
Msg-id 3DC62BB2.72FC66C8@technovell.com
Whole thread Raw
Responses Re: Comparing Numeric and Double Precision (float8)..  (Bruno Wolff III <bruno@wolff.to>)
List pgsql-sql
Hello all,

i DON'T know what is the proper forum to throw this question and I must
to insist in this "feature".  Sorry.

I have a lot of tables from Oracle 8i Databases with a lot of columns
with numeric(x,0) definition.

Ok.. I am traslating my oracle tables to PostgreSQL tables.  But I am
having a serious problem with my client aplications.

When I compare a numeric(x,0) field with a float8 field I have an error
on PostgreSQL what I didn't have with Oracle.  I mean:

CREATE test (one numeric(2,0));

SELECT * FROM test WHERE one = 1.00000; 

This runs fine on my Oracle Systems.. but I have problems with my
PostgreSQL system.  I have tried to create an operator to workaround
this inconvenience:

numeric '=' float8    with CREATE OPERATOR command and calling to a function to return a
boolean.

Ok.. great.. It is running now.  But when it runs.. I have another
problems comparing numeric with integers and so on.  So I must to DROP
OPERATOR......

I don't understand what is the problem and what options I have to
workaround it (without re-write a lot of client applications).

I have a lot of code I don't want to modify.  The question is:

Why we cannot compare numeric with double precision ?  And why Oracle or
SQL can do it without problems ?

Thanks a lot.


pgsql-sql by date:

Previous
From: "Dmitry G. Mastrukov" Дмитрий Геннадьевич Мастрюков
Date:
Subject: Re: uniqueidentifier datatype for 7.3.X
Next
From: Bruno Wolff III
Date:
Subject: Re: Comparing Numeric and Double Precision (float8)..