18

postgres 中是否有任何与 Oracle 函数 LAST_DAY() 等效的函数。

我需要在 postgres 中获取最后一天(包括月份和年份)

4

2 回答 2

35

好吧,在 postgres 中,似乎没有LAST_DAY()与 oracle 等效的功能。

如果需要,您可以通过以下方式拥有自己的

选择查询

SELECT (date_trunc('MONTH', now()) + INTERVAL '1 MONTH - 1 day')::date;

plsql 函数

        CREATE OR REPLACE FUNCTION last_day(date)
        RETURNS date AS
        $$
        SELECT (date_trunc('MONTH', $1) + INTERVAL '1 MONTH - 1 day')::date;
        $$ LANGUAGE 'sql'
        IMMUTABLE STRICT;

希望这可以帮助。

于 2013-01-09T06:10:40.297 回答
0
create or replace funCtion last_day(fromdt anyelement)
returns date as
$BODY$
  SELECT (date_trunc('MONTH', cast(fromdt as date)) + INTERVAL '1 MONTH - 1 day')::date;
$BODY$
  LANGUAGE sql VOLATILE
  COST 100;
  ALTER FUNCTION last_day(anyelement)
    OWNER TO postgres;
于 2015-05-19T11:21:35.867 回答