0
이번 달 일일 주문 수와 지난 달 일일 주문 수의 차이를 비교하고 postgresql sql query를 사용하여 일별로 그룹화하고 싶습니다.지난 달의 일일 수와 지난 일일의 일일 수를 비교하십시오.
예 :
1st of nov count - 1st of oct count
이번 달 일일 주문 수와 지난 달 일일 주문 수의 차이를 비교하고 postgresql sql query를 사용하여 일별로 그룹화하고 싶습니다.지난 달의 일일 수와 지난 일일의 일일 수를 비교하십시오.
예 :
1st of nov count - 1st of oct count
단순히 이전 달의 날짜를 계산하고 그
create table sales (
d DATE
,orederCount INT
);
INSERT INTO sales(d, orederCount) VALUES ('2016-11-01',12),('2016-10-01',10),('2016-09-01',10)
,('2016-11-02',13),('2016-10-02',14),('2016-09-02',5);
with data as (select d,(d-INTERVAL '1 month')::DATE as p,orederCount from sales)
select current.d,current.orederCount - COALESCE(prev.orederCount,0) as diff
from data as current
LEFT JOIN data as prev ON current.p = prev.d
;
결과에 조인
2016-09-01,10
2016-09-02,5
2016-10-01,0
2016-10-02,9
2016-11-01,2
2016-11-02,-1
음, 좋은 방법은 쿼리를 시작합니다 '선택'입니다. –
@ 리브 나는 현재와 지난 달 동안 하루에 일일 주문을 나누는 법을 안다. 내 문제는 지난 달에 해당하는 일수와 각 일수를 비교하는 방법과 확실하지 않은 방법입니다. 자기 조인 또는 무엇인가 추측하는 Im는 도움이 될지도 모르지만 확실하지 않습니다. – bsh
@GordonLinoff가 항상 그런 것은 아닙니다 :) – bsh