Re: Weird type selection choice - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: Weird type selection choice
Date
Msg-id 200711061650.09188.peter_e@gmx.net
Whole thread Raw
In response to Weird type selection choice  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Am Dienstag, 6. November 2007 schrieb Peter Eisentraut:
> I noticed this problem in 8.2 and 8.3:
>
> pei=# select mod( trunc( 1 ), 2 );
> ERROR:  42883: function mod(double precision, integer) does not exist
> LINE 1: select mod( trunc( 1 ), 2 );
>                ^
>
> It apparently casts the 1 to double precision to pick the variant
> trunc(dp)=>dp instead of trunc(numeric)=>numeric.  I was under the
> impression that we didn't want to cast integers to float types implicitly
> because this loses information.

Well, duh, of course we can't disallow casting integer to float.  But can we 
make it prefer numeric as a target if available?

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/


pgsql-hackers by date:

Previous
From: Bernd Helmle
Date:
Subject: Re: Weird type selection choice
Next
From: Tom Lane
Date:
Subject: Re: Weird type selection choice