当前位置: 首页 > 知识库问答 >
问题:

试图从SQL中的当前日期获取上个月的第一个月和最后一个月时出错

黄泰宁
2023-03-14
select DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE())-1, 0); -----First day of previous month
select DATEADD(MONTH, DATEDIFF(MONTH, -1, GETDATE())-1, -1); ------Last Day of previous month

当我运行上面的查询以从当前日期获取上个月的第一天和最后一天时,我得到了一个如下所述的错误。

错误:Amazon无效操作:函数pg_catalog.date_diff(“未知”,整数,不带时区的时间戳)不存在;[SQL State=42883,DB ErrorCode=500310]

请帮我解决这个问题。

共有1个答案

黄弘深
2023-03-14

测试:

前一个月的第一天:

SELECT DATEADD(month, -1, DATE_TRUNC('month', CURRENT_DATE))

前一个月的最后一天:

SELECT DATEADD(day, -1, DATE_TRUNC('month', CURRENT_DATE))
 类似资料:
  • 问题内容: 如何在where子句中使用下个月的第一天和最后一天? 问题答案: 采用:

  • 问题内容: 我正在尝试选择当前日期前三个月的每月的第一天。 因此,例如,如果当前日期是:“ 2015-11-08”,我的结果将是:“ 2015-08-01” 我希望这是yyyy-mm-dd格式。 我从一开始就尝试过,但是没有运气: 我已经尝试了很多事情,但似乎无法破解,任何建议或帮助都将不胜感激。先感谢您 问题答案: 逻辑很简单: 减去当月的日期减去日期后的1天 减去三个月 在SQL Server

  • 问题内容: 我正在尝试往返日期,该日期将有以前的日期,并且将有本月的第一个日期。一月份将会如此,依此类推。如何正确获取当月的第一个日期?我做不到。 问题答案: 尝试 更新(自Java 8以来 ):

  • 我想根据月份对值进行分类,以便第一次过滤这些值 例如:-

  • 问题内容: 我正在尝试编写这样的日历功能 是整数(1、2、3 …),$ day是一天(Sun,Mon,…)或数字,以较容易的一个为准。方向有些混乱,因为它进行了不同的计算。 举个例子 它使用默认值,并获得5月的第一个星期日,即2009-05-03。如果我们打电话 ,它将返回5月的第二个最后一个星期日,即2009-05-24。 问题答案: 也许可以使其更快。。。 代码非常有趣。 请注意,前进1表示反

  • 问题内容: 我想获取特定月份/年份中第一个星期一的日期。 我有的: 我基本上有两个int变量,一个代表年份,一个代表月份。 我想要的是: 我想知道本月的第一个星期一,最好是一个int或Integer值。 例如: 我有2014年和1月(1月),这个月的第一个星期一是6号,所以我想返回6。 问题: 我以为可以做到这一点,但是在设置日历(仅提供年和月)时已经遇到了麻烦。此外,我不确定如何使用返回实际的月