|
Распределение содержимого полей при выборке
|
|||
---|---|---|---|
#18+
Добрый день! Есть таблица с данными (используется PostgreSQL), отображающими историю действий по задачам в системе CRM : №#_ticketactiondepartmentstate_date571001NewTicket1открыто2019-07-01 09:50:29581001OwnerUpdate1открыто2019-07-01 09:50:43591001Move2открыто2019-07-01 09:53:44601001OwnerUpdate2открыто2019-07-01 10:42:49611001Move3открыто2019-07-01 10:43:53621001OwnerUpdate3открыто2019-07-02 11:06:30631001AddNote3закрыто2019-07-02 11:07:01641002NewTicket1открыто2019-07-01 01:04:36651002OwnerUpdate1открыто2019-07-01 01:05:47661002AddNote1закрыто2019-07-01 01:10:34 Подскажите, пожалуйста, каким образом из нее можно (и можно ли вообще) сделать выборку, чтобы получить на выходе вот это: #_ticketopenclosetime_starttime_stopdepartment10012019-07-01 09:50:292019-07-02 11:07:012019-07-01 09:50:292019-07-01 09:50:43110012019-07-01 09:50:292019-07-02 11:07:012019-07-01 09:50:432019-07-01 09:53:44110012019-07-01 09:50:292019-07-02 11:07:012019-07-01 09:53:442019-07-01 10:42:49210012019-07-01 09:50:292019-07-02 11:07:012019-07-01 10:42:492019-07-01 10:43:53210012019-07-01 09:50:292019-07-02 11:07:012019-07-01 10:43:532019-07-02 11:06:30310012019-07-01 09:50:292019-07-02 11:07:012019-07-02 11:06:302019-07-02 11:07:01310022019-07-01 01:04:362019-07-01 01:10:342019-07-01 01:04:362019-07-01 01:05:47110022019-07-01 01:04:362019-07-01 01:10:342019-07-01 01:05:472019-07-01 01:10:341 По сути нужно получить длительность каждого события и каким отделом оно было инициировано, при этом конец одного события, это начало для другого. Гугление подсказало что для обработки группы строк нужно использовать PARTITION BY, а так же функцию LAG() для движения по строкам, но я не знаю как это грамотно соединить вместе упираюсь в ошибку синтаксиса. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2019, 13:28 |
|
|
start [/forum/topic.php?desktop=1&fid=53&tid=1995095]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
61ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 151ms |
0 / 0 |