У меня есть набор данных, который содержит аналогичные значения и количество дат. Я пытаюсь написать sql-запрос, чтобы найти разницу между датами между строками и суммировать значения в другой строке. Набор данных выглядит следующим образом:Найти разницу между датами между строками с одинаковыми значениями
id | date | value |
1 2015-06-01 10
1 2015-09-22 25
2 2015-12-10 15
2 2015-07-11 20
2 2015-10-18 25
3 2015-04-05 30
3 2015-05-02 45
4 2015-06-01 20
И что я пытаюсь добраться до это:
id | date_diff | value
1 42 35
2 149 60
3 27 75
4 0 20
Идея состоит в date_diff находит разницу между датами для каждого идентификатора, и суммирует стоимость. Однако функция date_diff не работает для меня, и я думаю, что это может быть одна из первых проблем. Функция date_diff возвращает эту ошибку:
Функция dateiff (неизвестно, дата, временная метка без часового пояса) не существует Подсказка: никакая функция не соответствует указанному имени и типам аргументов. Возможно, вам придется добавлять явные типы.
Я использую общедоступный набор данных, так что это может быть частью проблемы. Любая помощь или идеи были бы замечательными!
Что произойдет, если для id 1 будет 3 строки? – mayu
Привет @Tymski В идеале, я бы нашел разницу в днях между минимальными и максимальными датами для данного ID. Для ID 1, если бы было три строки, date_diff будет разницей в битве самых ранних и последних дат, похожих на ID 2. Спасибо! – NLourme
Какая СУБД вы используете? –