Обсуждение: BUG #7807: "sign" function returns double

Поиск
Список
Период
Сортировка

BUG #7807: "sign" function returns double

От
a_rares@yahoo.com
Дата:
The following bug has been logged on the website:

Bug reference:      7807
Logged by:          Andrei Rares
Email address:      a_rares@yahoo.com
PostgreSQL version: 9.1.7
Operating system:   GNU/Linux 3.2.0-35-generic x86_64
Description:        =


In the documentation
(http://www.postgresql.org/docs/9.1/static/functions-math.html) it is
written that the return type is the same as the input, but a query like
'select sign(1::int)' returns a double

Re: BUG #7807: "sign" function returns double

От
Heikki Linnakangas
Дата:
On 14.01.2013 16:21, a_rares@yahoo.com wrote:
> In the documentation
> (http://www.postgresql.org/docs/9.1/static/functions-math.html) it is
> written that the return type is the same as the input, but a query like
> 'select sign(1::int)' returns a double

It says that the input type is "dp or numeric", which means "double or
numeric". So there are two overloaded functions called sign,
sign(double), and sign(numeric). When the doc says that the return type
is the same as input, it means that the return type is double, if you
call sign(double), and numeric if you call sign(numeric). There is no
sign(int) function, so the input "1::int" is cast to double, and the
return type is also a double.

- Heikki