Очевидно правите запитване към таблица T с колони WIN_30_DUR , AGENT_MASTER_ID и ROW_DT (наред с други). Имайте предвид, че ключови думи като OVER , PARTITION покажете, че използвате аналитична заявка:такива заявки ви позволяват да получите информация за текущия ред от другите, което би било сложно и дълго за писане с GROUP BY или други "стандартни" клаузи.
Тук, на даден ред, вие:
- група (
PARTITION) отAGENT_MASTER_ID:това получава всички редове наTс текущAGENT_MASTER_ID - във образувания дял Вие
ORDERредове отROW_DT - това подреждане ви позволява да изберете 30-те реда преди текущия
ROW_DT:това е значението наPRECEDINGключова дума (0ще избере текущия ред, обратното еFOLLOWINGклауза) - след това правите сума на
WIN_30_DURполе
На обикновен език това би означавало нещо като:за всеки агент вземете сбора от продължителностите на предходните 30 дни.