proudmore
@proudmore

Как получить разницу между значениями колонки при запросе за временной период?

Собираю информацию о приложениях. По отчету - за день. Я могу получить количество установок за весь период существования приложения, в то время как остальные данные разбиты по дням.
Задача - я хочу, имея полное количество установок вычислить разницу между днем запроса - и предыдущим днем внутри запроса всех данных по приложению за период.
SELECT "vr"."installs" as "installs" -(SELECT "vr"."installs" FROM "vungle_raport" "vr" WHERE "vr"."date" BETWEEN DATE '2017-02-28' - '-1 day' AND BETWEEN DATE '2017-02-30' - '-1 day')
FROM "app" "vr"
WHERE "vr"."date" BETWEEN '2017-02-28' AND '2017-03-30'

Очевидно - так нельзя, поскольку подзапрос вернет не целое число, а массив, который отнимать нельзя.
Может, как-то можно взять два запроса, и вычесть значения одного из другого?
  • Вопрос задан
  • 220 просмотров
Пригласить эксперта
Ответы на вопрос 2
freeExec
@freeExec
Участник OpenStreetMap
Сделать LEFT JOIN и отсеять результаты по NULL там где не нашлось совпадений.
Ответ написан
Комментировать
smagen
@smagen
Руководитель разработки Postgres Professional
Я не совсем понял, что именно нужно сделать. Но, я думаю, вам нужно в сторону WINDOW FUNCTIONS поглядеть.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы