Re: BUG #12885: The result of casting a double to an integer depends on the database version
| От | Tom Lane |
|---|---|
| Тема | Re: BUG #12885: The result of casting a double to an integer depends on the database version |
| Дата | |
| Msg-id | 32478.1427122083@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | BUG #12885: The result of casting a double to an integer depends on the database version (rschaaf@commoninf.com) |
| Ответы |
Re: BUG #12885: The result of casting a double to an integer
depends on the database version
|
| Список | pgsql-bugs |
rschaaf@commoninf.com writes:
> The result returned by the following query appears to depend on the
> PostgreSQL database version.
> The query is:
> select column1 AS double_value, cast(column1 AS INT) AS int_value
> from (VALUES (-2.5::double precision),
> (-1.5::double precision),
> (-0.5::double precision),
> (0.5::double precision),
> (1.5::double precision),
> (2.5::double precision)) t;
> In PostgreSQL 9.3.5, the query returns:
> double_value, int_value
> -2.5, -3
> -1.5, -2
> -0.5, -1
> 0.5, 1
> 1.5, 2
> 2.5, 3
> PostgreSQL 9.4.1, the query returns:
> -2.5, -2
> -1.5, -2
> -0.5, 0
> 0.5, 0
> 1.5, 2
> 2.5, 2
FWIW, I get the latter behavior (round to nearest even) in all release
branches, and I would say that one is correct. Not real sure why your
9.3 installation is misbehaving.
regards, tom lane
В списке pgsql-bugs по дате отправления: