2016-06-15 67 views
2

我想获取按日期排序的最后一年的数据记录。但问题是我需要从去年那个月的第一天开始的数据。从数据库中获取最近一年的数据

例如,如果今天是2016年6月15日,那么我需要从2015年6月1日起获取数据。

我试着用

SELECT * 
FROM Table 
WHERE 
    date >= DATE_SUB(NOW(),INTERVAL 1 YEAR) 
ORDER BY date; 

,但其没有工作做。

回答

2

尝试使用DATE_FORMAT,迫使它是该月的第一天:

SELECT * 
FROM Table t 
WHERE 
    t.date >= DATE_FORMAT(DATE_ADD(NOW(),INTERVAL -1 YEAR),'%Y-%m-01') 
ORDER BY date; 
+0

这是完美的伴侣。非常感谢。 –

+0

没问题:) @ arpit1611 – sagi