从表中获取最近三个月的记录

时间:2010-06-25 11:28:04

标签: postgresql

如何从表格中获取最近3个月的记录。

  

SELECT * from table where month>   CURRENT_DATE-120和月<   CURRENT_DATE逐月;

我用过上面的查询是否正确?我是否可以使用它从表中获得最近3个月的记录。

2 个答案:

答案 0 :(得分:73)

您可以使用内置INTERVAL指令

检查其工作原理:

SELECT CURRENT_DATE - INTERVAL '3 months'

您可以将SQL重写为:

SELECT * from table where date >  CURRENT_DATE - INTERVAL '3 months'

(未选中,但这可以让您了解如何使用INTERVAL指令)

答案 1 :(得分:1)

试试:

SELECT *
FROM table
WHERE month BETWEEN EXTRACT(MONTH FROM NOW() - INTERVAL '3 months')
AND EXTRACT(MONTH FROM NOW())
ORDER BY month
;