Tôi đang cố gắng tính toán số lượng người dùng, tích lũy cho cơ sở dữ liệu dellstore2. Nhìn vào câu trả lời ở đây, và các diễn đàn khác, tôi sử dụng nàyTổng tích lũy hàng tháng và Postgresql
select
date_trunc('month',orderdate),
sum(count(distinct(customerid)))
over (order by date_trunc('month',orderdate))
from orders group by date_trunc('month',orderdate)
này trả
2004-01-01 00:00:00.0 979
2004-02-01 00:00:00.0 1,952
2004-03-01 00:00:00.0 2,922
2004-04-01 00:00:00.0 3,898
2004-05-01 00:00:00.0 4,873
2004-06-01 00:00:00.0 5,846
2004-07-01 00:00:00.0 6,827
2004-08-01 00:00:00.0 7,799
2004-09-01 00:00:00.0 8,765
2004-10-01 00:00:00.0 9,745
2004-11-01 00:00:00.0 10,710
2004-12-01 00:00:00.0 11,681
Mỗi tháng là
979
973
970
976
975
973
981
972
966
980
965
971
Nó dường như được tổng cộng là tốt, nhìn vào vài đầu tiên mặt hàng. Nhưng khi tôi chạy
select count(distinct(customerid)) from orders
cho toàn bộ điều, tôi nhận được
8996
mà không đồng ý với mục cuối cùng trong đầu ra đầu tiên 11.681. Tôi đoán phép tính ở trên không thể xác định tính duy nhất trong nhiều tháng. Cách nhanh nhất để tính toán này, tốt nhất là không sử dụng tự kết nối là gì?
Một số khách hàng có mua nhiều thứ hơn một lần không? Trong những tháng khác nhau? –
@ NikolaMarkovinović bạn nói đúng về điều đó, bạn nên đặt câu trả lời đó là một câu trả lời ... –
@pOcHa Od svih gradova, moj omiljeni Niš .... :-) –