POSTGRESQL中的DATEDIFF

POSTGRESQL中的DATEDIFF,sql,sql-server,postgresql,datetime,Sql,Sql Server,Postgresql,Datetime,同事们好,我正在尝试将datediff函数从sql server带到带有date_部分的postgresql,但我无法让它工作,它是用于搜索过滤器的 sqlserver OR LOWER(CAST( "DATEDIFF(month, USER.USER_FECHA_INCORPORACION, AGENTE.AGENTE_FECHA_RETIRO)" as text)) postgresql(我正在尝试的) 谢谢在Postgres中,你可以用日期部分()和

同事们好,我正在尝试将datediff函数从sql server带到带有date_部分的postgresql,但我无法让它工作,它是用于搜索过滤器的

sqlserver

 OR LOWER(CAST(
        "DATEDIFF(month, USER.USER_FECHA_INCORPORACION, AGENTE.AGENTE_FECHA_RETIRO)" as text))
postgresql(我正在尝试的)


谢谢

在Postgres中,你可以用
日期部分()和
年龄()来写这篇文章:


一种方法是根据月份进行计算:

select ( (year(u.USER_FECHA_INCORPORACION) * 12 + month((u.USER_FECHA_INCORPORACION)) -
         (year(a.AGENTE_FECHA_RETIRO) * 12 + month(a.AGENTE_FECHA_RETIRO) )
       ) as diff_months

请不要使用不相关的标记ID您在internet上搜索“plpgsql”“datediff”?有几个实现,您可以轻松地调整其中一个。。。
date_part('year', age(user.user_fecha_incorporacionn=, agente.agente_fecha_retiro)) * 12
+ date_part('month', age(user.user_fecha_incorporacionn=, agente.agente_fecha_retiro))
select ( (year(u.USER_FECHA_INCORPORACION) * 12 + month((u.USER_FECHA_INCORPORACION)) -
         (year(a.AGENTE_FECHA_RETIRO) * 12 + month(a.AGENTE_FECHA_RETIRO) )
       ) as diff_months