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. Clearly, the numeric variant should be preferred anyway. What's wrong here? -- Peter Eisentraut http://developer.postgresql.org/~petere/ ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate