如何以yyyy-mm-dd
格式获取上个月的第一天。
我已经尝试过
SELECT CONVERT(VARCHAR(10), DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, GETDATE()), 0)), 120)
答案 0 :(得分:3)
您可以使用EOMONTH
函数。该函数应该返回月底,因此要在结果中添加一天:
SELECT DATEADD(DAY, 1, EOMONTH(GETDATE(), -2)) -- returns 2019-07-01 on 2019-08-28 01:02:03.004
将以上表达式包装在FORMAT(..., 'yyyy-MM-dd')
中,以格式化结果。
答案 1 :(得分:0)
这将起作用:
SELECT CONVERT(VARCHAR(10),DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0)),23)
输出:
2019-07-31