2012-03-02 26 views
0

我想從數據庫中檢索一組值,每個月一個值,即用戶交易價格的總和。在CakePHP中查找用戶按月份拆分的記錄總數

例如:用戶在3月購買3件商品(1歐元,2歐元,3歐元),4月購買2件商品(5歐元,10歐元)。

我想返回一個包含類似數組{月:6月15}

道歉,如果對此的解釋是窮人,但有人可以點我在正確的方向?

謝謝,

kSeudo。

+0

數據庫中這一行是什麼類型? – 2012-03-02 11:23:21

+0

它是一個'採購'表,其中包含與物品購買相關的字段的行:userId,purchaseDate,purchaseAmount,Details等。 其中一個mysql數據庫 – kSeudo 2012-03-02 11:45:58

+0

好吧,但'purchaseAmount'是十進制(或int),'purchaseDate'是日期時間, 對? – 2012-03-02 11:49:48

回答

2

您可以通過purchaseDate必須組和總結purchaseAmounts

Select Date_Format(purchaseDate, '%M%Y') month, sum(purchaseAmounts) 
From purchases 
Group by Date_Format(purchaseDate, '%M%Y') 

如果你想每用戶每月的金額,包括userID

Select UserID, Date_Format(purchaseDate, '%M%Y') month, sum(purchaseAmounts) 
From purchases 
Group by UserID, Date_Format(purchaseDate, '%M%Y') 

如果你正在尋找購買單個用戶,在第一條語句中添加where UserID = That_Users_ID

+0

感謝TPete, 這幾乎是有,但它不是求和purchaseAmounts,我仍然得到每購買 一個條目如果我弄明白我會發布的解決方案。 – kSeudo 2012-03-02 12:16:58

+1

@kSeudo你可以發佈你的'create table'語句和一些示例數據。從你迄今爲止提供的情況來看,這應該是對的。 – TPete 2012-03-02 12:21:01

+0

賓果...我有一個錯字。完美的作品,它非常簡單。謝謝TPete! – kSeudo 2012-03-02 12:24:45