以 YYYY-MM-DD 格式获取上个月的第一天
Get first day of previous month in YYYY-MM-DD format
如何获取 yyyy-mm-dd
格式的上个月的第一天。
我试过了
SELECT CONVERT(VARCHAR(10), DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, GETDATE()), 0)), 120)
您可以为此使用 EOMONTH
函数。此函数应该 return 月底,因此在结果中添加一天:
SELECT DATEADD(DAY, 1, EOMONTH(GETDATE(), -2)) -- returns 2019-07-01 on 2019-08-28 01:02:03.004
将上面的表达式包裹在 FORMAT(..., 'yyyy-MM-dd')
中以 格式化 结果。
这会起作用:
SELECT CONVERT(VARCHAR(10),DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0)),23)
输出:
2019-07-31
如何获取 yyyy-mm-dd
格式的上个月的第一天。
我试过了
SELECT CONVERT(VARCHAR(10), DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, GETDATE()), 0)), 120)
您可以为此使用 EOMONTH
函数。此函数应该 return 月底,因此在结果中添加一天:
SELECT DATEADD(DAY, 1, EOMONTH(GETDATE(), -2)) -- returns 2019-07-01 on 2019-08-28 01:02:03.004
将上面的表达式包裹在 FORMAT(..., 'yyyy-MM-dd')
中以 格式化 结果。
这会起作用:
SELECT CONVERT(VARCHAR(10),DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0)),23)
输出:
2019-07-31