Re: Issues with lag command

From: Igor Neyman <ineyman(at)perceptron(dot)com>
To: Mohamed DIA <macdia2002(at)gmail(dot)com>, "pgsql-sql(at)postgresql(dot)org" <pgsql-sql(at)postgresql(dot)org>
Subject: Re: Issues with lag command
Date: 2017-07-28 19:53:15
Message-ID: DM5PR17MB1499C3C8BA6133702E961C3FDABF0@DM5PR17MB1499.namprd17.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hello
I have a test table with the following structure (2 columns: ID and time_id )and data

ID, time_id
1;"2015-01-01"
2;""
3;""
4;"2015-01-02"
5;""
6;""
7;""
8;"2015-01-03"
9;""
10;""
11;""
12;""
13;"2015-01-05"
14;""
15;""
16;""
I'd like to update line 2 and 3 with the date in record 1 (2015-01-01)
Update line 5,6 and 7 with the date in record 4 (2015-01-02) and so on
How about simple SQL instead of PlSql:

UPDATE test T1 SET time_id = (SELECT T2.time_id FROM test T2 WHERE T2.id =
(SELECT max(T3.id) FROM test T3 WHERE T3.id < T1.id AND T3.time_id IS NOT NULL)
)
WHERE T1.time_id IS NULL;

Regards,
Igor Neyman

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message srilinux 2017-07-28 20:43:22 created database but access is not copied ? any suggestions
Previous Message David G. Johnston 2017-07-28 19:29:06 Re: Issues with lag command