【发布时间】:2018-04-27 13:55:09
【问题描述】:
我检查了Get the records of last month in SQL server,但没有成功!
我尝试根据我的数据库表和列issue_date获取上个月的记录。
执行此操作的 SQL 查询是什么?
为了澄清,今天(2018 年 4 月 27 日)我想获取 3 月 18 日的所有记录。
我有转换为日期格式的 issue_date,但下面的代码为我提供了从 2018 年 3 月 1 日到今天(包括今天)的所有记录。
DATEPART(month, CONVERT (VARCHAR(11),DATEADD(day,wo_header.issue_date,`1971/12/31`),106)) = DATEPART(month, DATEADD(month, -1, getdate()))
【问题讨论】:
-
你不能像下面这样在一个月前得到它吗? WHERE issue_date >= GETDATE()-30
-
-30 代表天数。我想要实现的是有一个代码,可以在 4 月运行时给我 3 月的数据(每天 - 所以它不能在几天内中继)
-
所以您想要从 3 月 1 日到 3 月 31 日的数据?
-
在这种情况下是的。但在 5 月,它会移至 4 月 1 日至 4 月 30 日等……根据我的问题,总是在上个月。
-
我认为这篇文章会给你一个想法。 stackoverflow.com/a/8458350/7100903
标签: sql sql-server tsql