BUG #13587: Lag Default option does not work with floats and reals - Mailing list pgsql-bugs

From rmcgehee@gmail.com
Subject BUG #13587: Lag Default option does not work with floats and reals
Date
Msg-id 20150825182638.2091.20578@wrigleys.postgresql.org
Whole thread Raw
Responses Re: BUG #13587: Lag Default option does not work with floats and reals  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      13587
Logged by:          Robert McGehee
Email address:      rmcgehee@gmail.com
PostgreSQL version: 9.4.4
Operating system:   Linux / Redhat 7
Description:

The lag() window function is documented to accept a default argument.
However, if lag is applied to either a float or a real (and possibly other
types as well), adding a default gives an error. As this behavior for
reals/floats does not match the documentation, I believe it to be a bug.
Below is an example showing that lag() works as document for integers, but
not on a real column.


CREATE TABLE _test1 (a INTEGER);
CREATE TABLE _test2 (a REAL);
INSERT INTO _test1 VALUES (1);
INSERT INTO _test1 VALUES (2);
INSERT INTO _test2 VALUES (1);
INSERT INTO _test2 VALUES (2);

SELECT a, lag(a, 1)    OVER (ORDER BY a) FROM _test1;
SELECT a, lag(a, 1, 0) OVER (ORDER BY a) FROM _test1;

SELECT a, lag(a, 1)    OVER (ORDER BY a) FROM _test2;
SELECT a, lag(a, 1, 0) OVER (ORDER BY a) FROM _test2;

pgsql-bugs by date:

Previous
From: dmt.shvedov@gmail.com
Date:
Subject: BUG #13586: Repository/Distribution issues
Next
From: samarkinpa@gmail.com
Date:
Subject: BUG #13588: Repair does not work in unattended mode