计算PHP当前月份的MySQL行数

时间:2013-06-15 20:41:38

标签: php mysql sql

我想显示当月的订单数量,我不知道要执行此操作的查询:

这是代码:

$stats_orders_curr = mysql_query(
                     'SELECT count(1) FROM orders 
                      WHERE MONTH = MONTH(CURDATE()) 
                      AND YEAR = YEAR(CURDATE())'
);

$orders_curr =  mysql_fetch_array($stats_orders_curr);
$orderscurr = $orders_curr[0];

2 个答案:

答案 0 :(得分:2)

我会从

更改SQL
SELECT count(1) FROM orders WHERE MONTH = MONTH(CURDATE()) AND YEAR = YEAR(CURDATE())

SELECT count(*) FROM `orders` WHERE MONTH(`orderdate`) = MONTH(CURDATE()) AND YEAR(`orderdate`) = YEAR(CURDATE())

其中orderdate是记录订单日期的字段;)

答案 1 :(得分:2)

试试这个:

SELECT * FROM `orders` WHERE `orderdate` >=  DATE_FORMAT(NOW(), '%Y-%m-01 00:00:00')

避免像

这样的字段上的函数是一种很好的做法
where MONTH(orderdate)

因为您将无法使用索引。