Корреляция дневной выручки между каналами за 12 месяцев
SQL, по которому посчитано
WITH daily AS (
SELECT date, channel, sum(revenue) AS revenue
FROM sales
WHERE date >= (SELECT date_trunc('month', max(date)) FROM sales) - INTERVAL '12 months'
GROUP BY date, channel
)
SELECT a.channel || ' и ' || b.channel AS channel_pair,
round(corr(a.revenue, b.revenue), 2) AS corr
FROM daily a
JOIN daily b ON a.date = b.date AND a.channel < b.channel
GROUP BY 1
ORDER BY corr DESC