PostgreSQL: расчет между первым и последним - PullRequest
0 голосов
/ 31 мая 2018

Я пытаюсь написать запрос, который вычисляет количество дней между первым и последним счетом для идентификатора.

Пример данных:

id  date    score
11  1/1/2017    25.34
4   1/2/2017    34.34
25  1/2/2017    15.78
4   3/2/2017    47.2
25  7/3/2017    65.21
11  9/3/2017    96.09
25  10/3/2017   11.3
4   10/3/2017   27.12

Это далеко не то, что мне нужно, но я действительно потерян.Бессмысленно быть честным.Есть идеи?

Спасибо

1 Ответ

0 голосов
/ 31 мая 2018

Попробуйте это:

    SELECT 
    customer_id,
    date(last_score) - date(first_score) AS days_between_last_and_first_score,
    total_score::float/(date(last_score) - date(first_score)) AS score_per_day
   FROM
   (
   select customer_id, 
   MAX(date(purchase_date)) as last_score,
   MIN(date(purchase_date)) as first_score,
   SUM(score) AS total_score
   FROM candidate_test_q1
   group by customer_id
  ) AS sub_query
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...