Re: Count of records in a row
От | Robert James |
---|---|
Тема | Re: Count of records in a row |
Дата | |
Msg-id | CAGYyBghy0HqXBHopgqkfrb1OUrw2eFG8y-yKy7RbW--+Axp4-Q@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Count of records in a row (Rémi Cura <remi.cura@gmail.com>) |
Ответы |
Re: Count of records in a row
|
Список | pgsql-general |
On 10/22/13, Rémi Cura <remi.cura@gmail.com> wrote: > But it is immensely easier and sometimes mandatory to use instead > a plpgsql function using cursor (or cursors). > > It would be something like that in plpgsql : > > cursor on table of letter ordered > accum = 0; > loop on rows of table ordered > > if letter = previous letter, new_id = accum > else accum ++ ; new_id = accum > > old letter = new_letter > new letter = next letter; > > end of loop, Shouldn't it be possible to do that with a FOR loop without a cursor? It might be that procedural is the way to go. But I still believe that relational algebra can handle this, even without a window function. Something like: SELECT event e, COUNT( SELECT event oe ... WHERE oe.event_time > e.event_time AND NOT EXISTS ( SELECT event te WHERE te.event_time > e.event_time AND te.event_time < oe.event_time)) .
В списке pgsql-general по дате отправления: