昨日
select SUM(your_value_field) as sValue from your_table where TO_DAYS(CURDATE())-TO_DAYS(your_date_field)=1
当月
SELECT sum(your_value_field) as sValue FROM your_table where DATE_FORMAT(your_date_field, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
当年
select sum(your_value_field) as sValue from your_table where YEAR(your_date_field) = YEAR(CURDATE())
最近30天
SELECT date(your_date_field) as sDate, SUM(your_value_field) as sValue FROM your_table where (date(your_date_field) BETWEEN DATE_SUB(CURDATE(), INTERVAL 30 DAY) AND CURDATE()) GROUP BY date(your_date_field) ORDER BY date(your_date_field)
最近12月
SELECT date(your_date_field) as sDate, SUM(your_value_field) as sValue FROM your_table where (date(your_date_field) BETWEEN DATE_SUB(CURDATE(), INTERVAL 12 MONTH) AND CURDATE()) GROUP BY YEAR(your_date_field), MONTH(your_date_field) ORDER BY YEAR(your_date_field), MONTH(your_date_field)