Re: [SQL] Issues with lag command - Mailing list pgsql-sql

From Igor Neyman
Subject Re: [SQL] Issues with lag command
Date
Msg-id DM5PR17MB1499C3C8BA6133702E961C3FDABF0@DM5PR17MB1499.namprd17.prod.outlook.com
Whole thread Raw
In response to [SQL] Issues with lag command  (Mohamed DIA <macdia2002@gmail.com>)
List 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

 

 

pgsql-sql by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: [SQL] Issues with lag command
Next
From: srilinux
Date:
Subject: [SQL] created database but access is not copied ? any suggestions