Я работаю над запросом, чтобы ежедневно получать совокупный отчет количества uids.Совокупный отличный счет
Пример: Предположим, что на дату 2016-11-01 появилось 2 uids (100,200), и они также появились на следующий день с новым uid 300 (100,200,300) на 2016-11-02 На данный момент я хочу, чтобы накопительный кумулятивный счет будет 3 не 5, поскольку (идентификатор пользователя 100 и 200 уже появился в прошлый день).
Input table:
date uid
2016-11-01 100
2016-11-01 200
2016-11-01 300
2016-11-01 400
2016-11-02 100
2016-11-02 200
2016-11-03 300
2016-11-03 400
2016-11-03 500
2016-11-03 600
2016-11-04 700
Expected query result:
date daily_cumulative_count
2016-11-01 4
2016-11-02 4
2016-11-03 6
2016-11-04 7
До сих пор я получаю совокупный отчетный счет в день, но он включает в себя предыдущие отличительные показатели от предыдущего дня.
SELECT
date,
SUM(count) OVER (
ORDER BY date ASC
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
)
FROM (
SELECT
date,
COUNT(DISTINCT uid) AS count
FROM sample_table
GROUP by 1
)ORDER BY date DESC;
Любая помощь была бы принята с благодарностью.