Функция avg_event
вычисляет среднее значение по экземпляру процесса в указанной колонке. Работает по числовым типам колонок.
avg_event(колонка|выражение [, фильтр])
- колонка или выражение — имя столбца из таблицы журнала событий, по которому будет работать функция. Также можно написать выражение с более сложной логикой.
- фильтр — необязательное условие фильтрации для указания того, какие значения следует учитывать при подсчете.
Запрос:
select
case_id as "Экз. процесса",
avg_event(event_log.cost) as "Средняя стоимость"
from case_table
Данные на входе
Данные на выходе
case_table
event_log
case_id |
activity |
cost |
1 |
А |
100 |
1 |
В |
400 |
1 |
В |
50 |
1 |
С |
200 |
1 |
D |
200 |
2 |
А |
200 |
2 |
B |
100 |
2 |
C |
50 |
2 |
D |
400 |
2 |
E |
200 |
Экз. процесса |
Средняя стоимость |
1 |
211.53846153846 |
2 |
190 |
Запрос:
select
case_id,
activity,
cost,
avg_event(event_log.cost) as "Средняя стоимость",
case when cost>avg_event(event_log.cost) then 'Выше среднего' else 'Ниже' end as "Сравнение"
from event_log
Данные на входе:
Данные на выходе:
event_log
case_id |
activity |
cost |
1 |
А |
100 |
1 |
В |
50 |
1 |
С |
200 |
1 |
D |
200 |
id |
activity |
cost |
Средняя стоимость |
Сравнение |
1 |
А |
200 |
190 |
Выше среднего |
1 |
В |
100 |
190 |
Ниже |
1 |
В |
50 |
190 |
Ниже |
1 |
С |
400 |
190 |
Выше среднего |
1 |
D |
200 |
190 |
Выше среднего |
Запрос:
select
case_id as "Экз. процесса"
from case_table
where avg_event(event_log.cost) > 200
Данные на входе
Данные на выходе
case_table
event_log
case_id |
activity |
cost |
1 |
А |
100 |
1 |
В |
400 |
1 |
В |
50 |
1 |
С |
200 |
1 |
D |
200 |
2 |
А |
200 |
2 |
B |
100 |
2 |
C |
50 |
2 |
D |
400 |
2 |
E |
200 |
Запрос:
select
id as "Экз. процесса"
avg_event(event_log.cost, event_log.user='Pete') as "Средняя стоимость"
from case_table
Данные на входе
Данные на выходе
case_table
event_log
case_id |
cost |
user |
1 |
400 |
Sean |
1 |
50 |
Mike |
1 |
200 |
Sara |
1 |
100 |
Pete |
2 |
200 |
Pete |
2 |
400 |
Sue |
2 |
50 |
Pete |
2 |
100 |
Mike |
2 |
200 |
Sara |
Экз. процесса |
Средняя стоимость |
1 |
100 |
2 |
125 |