for example,

postgres=# select int2'1' + int8'1';
ERROR:  operator is not unique: smallint + bigint
LINE 1: select int2'1' + int8'1';
                       ^
HINT:  Could not choose a best candidate operator. You may need to add 
explicit
type casts.

there are int4 + int8 and int8 + int8, but no int2 + int8, so two operators 
available, they are int4 + int8 and int8 + int8,
system can't choose a best candidate operator.


"ykhuang" <[EMAIL PROTECTED]> дÈëÏûÏ¢ÐÂÎÅ:[EMAIL PROTECTED]
> there are many cross type arithmetic operators, like int2 + int4, int8 + 
> int4, I think these can be deleted. Here are the reasons, after deleted,
> int2 + int4 will choose the operator int4 + int4, int8 + int4 choose int8 
> + int8, Is that ok? Thanks.
> 



---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to