获得本周的计数值

时间:2012-08-09 04:37:13

标签: mysql count

我必须使用以下查询来获取今天的计数值。

select *
from orders 
where status='P' 
AND DATE_FORMAT(FROM_UNIXTIME(date),'%Y-%m-%d')=CURDATE();

它成功显示计数值。但是获取本月的计数值意味着必须使用以下查询。

select * from xcart_orders where status='C' AND DATE_FORMAT(FROM_UNIXTIME(date),'%m')=DATE_FORMAT(CURDATE(),'%m');

成功显示正确的计数值。

如何获得本周的计数值..请帮助我。本周写的查询

3 个答案:

答案 0 :(得分:0)

您需要删除:

DATE_FORMAT(FROM_UNIXTIME(date),'%Y-%m-%d')= (MONTH(date)

您的查询应该是:

select * 
from orders 
where status='P' AND 
(MONTH(FROM_UNIXTIME(date)) = MONTH(CURDATE()) AND 
(YEAR(date) = YEAR(CURDATE());

答案 1 :(得分:0)

稍微修改一下您的查询,这应该可行:

select * from orders 
where status='P'
AND MONTH(date) = MONTH(CURDATE()) 
AND YEAR(date) = YEAR(CURDATE());

您可以将其重写为:

select * from orders 
where status='P'
AND EXTRACT(YEAR_MONTH FROM date) = EXTRACT(YEAR_MONTH FROM NOW())

答案 2 :(得分:0)

以下为我工作,尝试并让我知道

SELECT * FROM TABLE_NAME WHERE date_format(FROM_UNIXTIME(date_field), '%u')=date_format(now(), '%u')