Untitled

mail@pastecode.io avatar
unknown
plain_text
7 months ago
910 B
1
Indexable
Never
DROP TABLE IF EXISTS #vtt;

SELECT 
    vt.client_inn, 
    vt.agent_inn,
    vt.contract_name, 
    vt.region,
    DATEFROMPARTS(YEAR(vt.datetime_trn), MONTH(vt.datetime_trn), 1) AS transaction_date, -- Дата первого дня месяца транзакции
    SUM(vt.litres) OVER(PARTITION BY vt.client_inn, vt.agent_inn, YEAR(vt.datetime_trn), MONTH(vt.datetime_trn)) AS monthly_litres, -- Суммарное количество литров за месяц для каждой пары клиент-агент
    CAST(MAX(vt.datetime_trn) OVER(PARTITION BY vt.client_inn, vt.contract_name) AS DATE) AS MAX_DOC_date -- Максимальная дата транзакции для каждой пары клиент-контракт
INTO #vtt
FROM [DATAMARTS].[dpa].vw_transactions vt
GROUP BY 
    vt.datetime_trn, 
    vt.client_inn, 
    vt.agent_inn, 
    vt.contract_name, 
    vt.region;
Leave a Comment