2016-03-15 75 views
0

我正在使用Postgres 9.1并尝试从知道给定月份的表中获取记录,并且应该知道日期类型日期字段是否包含月份。如何根据日期在SQL中获取特定月份的记录

这是我的查询:

SELECT consejo.numero,consejo.fecha FROM consejo WHERE MONTH(consejo.fecha) = 2 

,但我得到了以下错误:

ERROR: There is no month function (date)
LINE 1: ... T consejo.numero, consejo.fecha council FROM WHERE MONTH (cons ...

HINT: No function matches the name and types of arguments. You may need to add explicit type conversion.

可能是错的?

+1

你应该比较使用' BETWEEN'或'>'使您的查询[SARGable](http://stackoverflow.com/questions/799584/what-makes-a-sql-statement-sargable) – lad2025

+1

Ar你确定你想过滤一个月,而不是年和月? –

+0

手册中的哪个位置可以找到'month()'函数? –

回答

0

在Postgresql中没有MONTH函数可用。您可以使用EXTRACT代替:

WHERE EXTRACT(MONTH FROM consejo.fecha) = 2 
相关问题