[英]How to find rows from less than 6 months ago in PHP and MySQL, Month By Month
i have this SQL sentence when execute in phpmyadmin result is fine: 我在phpmyadmin中执行结果时有以下SQL语句:
SELECT COUNT(cid) as total from courier where pick_date > DATE_SUB(now(),
INTERVAL 6 MONTH) group by year(pick_date), MONTH(pick_date)
Result: 结果:
COUNT(cid)
221
380
368
315
140
204
54
But when i try in PHP only obtain one count 但是当我尝试使用PHP时只能获得一个计数
$out = array();
$sql="SELECT COUNT(cid) as total from courier where pick_date > DATE_SUB(now(), INTERVAL 6 MONTH) group by year(pick_date), MONTH(pick_date)";
$pquery=$pdo->query($sql);
$prow=$pquery->fetch_all(PDO::FETCH_ASSOC);
$out[]=$prow['total'];
echo implode( ", ", $out );
Actual Result: 221 实际结果:221
Expected:
221
380
368
315
140
204
54
Thanks in Advance... :) 提前致谢... :)
Check below code: 检查以下代码:
$out = array();
$sql="SELECT COUNT(cid) as total from courier where pick_date > DATE_SUB(now(), INTERVAL 6 MONTH) group by year(pick_date), MONTH(pick_date)";
$stmt = $pdo->prepare($sql);
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$out = array();
foreach($stmt->fetchAll() as $value) {
$out[] = $value['total'];
}
echo implode(", ", $out );
Hope it helps you. 希望对您有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.