【问题标题】:LAST_DAY function in postgrespostgres 中的 LAST_DAY 函数
【发布时间】:2012-12-23 03:15:02
【问题描述】:

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

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

【问题讨论】:

标签: postgresql


【解决方案1】:
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;

【讨论】:

  • postgres 没有 last_day 函数我们需要创建用户定义函数
【解决方案2】:

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

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

选择查询

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;

希望这会有所帮助。

【讨论】:

  • 谢谢 Gopinagh.. 很好。
猜你喜欢
  • 1970-01-01
  • 2017-05-13
  • 1970-01-01
  • 1970-01-01
  • 2017-05-21
  • 2012-12-18
  • 1970-01-01
  • 1970-01-01
  • 2017-03-28
相关资源
最近更新 更多