2017-01-11 2 views
0

У меня такой SQL-код в SQLITE. Я должен найти сумму предыдущей четырехмесячной суммы (количества) с этой даты.SQLITE найдет прокат данных за 4 недели

Date|Quantity 
------|------ 
4/22/2015|23 
4/25/2015|10 
5/1/2015| 28 
6/9/2015|45 
6/29/2015|31 

Ожидаемый результат:

Date | Quantity 
------ | ------ 
4/22/2015 | 23 
4/25/2015 | 33 
5/1/2015 | 38 
6/9/2015 | 45 
6/29/2015 | 76 

Я пытаюсь с ниже запроса. Я не получаю правильный результат.

select t1.date, t1.quantity, SUM(t2.quantity) as sum 
from aaa t1 left join 
    aaa t2 
    on datetime(t1.date) <= datetime(t2.date, '-28 days') 
group by t1.date, t1.quantity 
order by t1.date 

ответ

1

Я думаю, вы близки. Для сравнения даты необходимо использовать как начало, так и цели:

select t1.date, t1.quantity, SUM(t2.quantity) as sum 
from aaa t1 left join 
    aaa t2 
    on datetime(t2.date) >= datetime(t1.date, '-28 days') and 
     datetime(t2.date) <= datetime(t1.date) 
group by t1.date, t1.quantity 
order by t1.date; 
Смежные вопросы