日期:2014-05-17 浏览次数:20706 次
SELECT count(1) FROM `articles` WHERE `pubtime` > 6月1号0点时间戳 and `postdate` < 7月1号0点时间戳
------解决方案--------------------
>select count(1), date(pubtime) from articles group by date(pubtime);
------解决方案--------------------
先把几个点的时间戳取出来.如2012年8月、2012年6月。
然后在拼接sql查询,应该很容易的。
别着急,你试试
------解决方案--------------------
1、
select FROM_UNIXTIME(pubtime, '%Y-%m') as pubtime, count(*) as cnt from articles group by FROM_UNIXTIME(pubtime, '%Y-%m')
------解决方案--------------------
这是每个月:
>select count(1), extract(year_month from pubtime) from articles group by extract(year_month from pubtime);
------解决方案--------------------
有个问题,在sql中使用函数会影响sql的执行效率,被用字段的主键什么的,有时候也没效果
SELECT SUM(CASE when MONTH( FROM_UNIXTIME(pubtime, '%Y-%m-%d'))=6 THEN 1 ELSE 0 END)AS sum_6, SUM(CASE when MONTH( FROM_UNIXTIME(pubtime, '%Y-%m-%d'))=8 THEN 1 ELSE 0 END)AS sum_8 FROM dc_admin