[英]count date per month , per year on database with date format with CodeIgniter
[英]cakephp COUNT items per month in a year
你如何使用cakephp計算,例如一年中每個月發布的帖子數量?
最好使用Model-> find('count')並獲取數組中的數據。
我只是做了類似的事情,只使用CakePHP(沒有直接查詢)。 它適用於CakePHP 2,尚未在1.x中測試過。
您的示例的代碼將是這樣的:
$params = array(
'recursive' => -1,
'fields' => array('id', 'MONTH(created)')
'group' => array('YEAR(created)', 'MONTH(created)')
);
$numberOfPosts = $this->Model->find('count', $params);
這很接近
詢問
$data = $this->Post->query("SELECT COUNT(id),MONTH(created) FROM posts GROUP BY YEAR(created), MONTH(created);");
返回
Array
(
[0] => Array
(
[0] => Array
(
[COUNT(id)] => 1
[MONTH(created)] => 3
)
)
[1] => Array
(
[0] => Array
(
[COUNT(id)] => 2
[MONTH(created)] => 4
)
)
)
使用蛋糕時,我更喜歡盡可能靠近框架。 這意味着我盡量避免直接在控制器中編寫查詢,因為這會導致模型代碼無處不在。 因此,我推薦兩種解決方案之一
1 :(以及我對更復雜的東西做的事情):為要進行的計算創建一個視圖,並創建一個匹配的模型。
2:使用前面提到的查詢,但將其放在模型類中,而不是應用程序類中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.