Мне нужно рассчитать среднее количество дней, если для каждого идентификатора имеется две или более дат: дни между датами 1 и 2, датами 2 и 3 и т. Д. Выходными данными должно быть среднее число дней между каждым интервалом для каждого идентификатора.,Я ищу решение, которое перебирает каждую дату для каждого идентификатора, а затем усредняет количество дней
. Я мог бы создать номер строки и разделить по идентификатору, но в реальных данных может быть до 20 строк.для каждого ID.
CREATE TABLE #ATABLE(
ID INTEGER NOT NULL
,DATE DATE NOT NULL
);
INSERT INTO #ATABLE(ID,DATE) VALUES (1,'1/1/2019');
INSERT INTO #ATABLE(ID,DATE) VALUES (2,'1/1/2019');
INSERT INTO #ATABLE(ID,DATE) VALUES (2,'1/10/2019');
INSERT INTO #ATABLE(ID,DATE) VALUES (2,'1/20/2019');
INSERT INTO #ATABLE(ID,DATE) VALUES (2,'1/30/2019');
INSERT INTO #ATABLE(ID,DATE) VALUES (3,'1/1/2019');
INSERT INTO #ATABLE(ID,DATE) VALUES (3,'1/10/2019');
--get avg days between orders
DROP TABLE #ATABLE
Выход для вышеупомянутого будет:
ID AvgDatediff
1 Null
2 10
3 9