Re: How do write a query...
От | Mischa Sandberg |
---|---|
Тема | Re: How do write a query... |
Дата | |
Msg-id | 1118460944.42aa5c1012c59@webmail.telus.net обсуждение исходный текст |
Ответ на | Re: How do write a query... (KÖPFERL Robert <robert.koepferl@sonorys.at>) |
Список | pgsql-sql |
> |From: Alain Reymond [mailto:arwebmail@skynet.be] > |Sent: Mittwoch, 01. Juni 2005 18:01 > |Subject: [SQL] How do write a query... > | > |I have a table like > |Id Num Date AValue > |1 10 01/01/2005 50 > |2 10 31/05/2005 60 > |3 25 02/02/2005 55 > |4 25 15/03/2005 43 > |5 25 28/05/2005 62 > |etc.. > | > |Id is unique, Num is an identification number with duplicates > possible, > |date is a ... date and Avalue... a value! > | > |If we have > |Id Num Date AValue > |Id1 Num1 Date1 AValue1 > |Id2 Num1 Date2 AValue2 > | > |The table is ordered on Num+Date. > |What I would like to calculate is (AValue2-AValue1) for a given Num > |(here num1). > | > |In this case, I would have to calculate > |60-50 for Num 10 > |and > |43-55, 62-43 for Num 25. Not sure if this covers all that you want, given your examples (what if there's only one row for a given Num value?), but ... select Num, AValue-AValue1 from Tafel join (select Num, min(AValue) as AValue1 from Tafel group by Num) as T using(Num) where AValue > AValue1
В списке pgsql-sql по дате отправления: