【发布时间】:2020-03-18 04:58:14
【问题描述】:
我想要一个查询来获取给定日期的下 12 个日期(每月的第一天)。
例如,输入日期是 01/01/2019 (DD/MM/YYYY) 那么输出应该如下:
我尝试使用DATEADD 函数作为循环运行:
DECLARE @i INT
SET @i = 0
while(@i<12)
BEGIN
SELECT DATEADD(mm, @i, '01/01/2019');
SET @i = @i+1
END
这可行,但有没有一种方法可以通过单个查询获取所需的输出?
【问题讨论】:
-
您使用的是哪个 Rdbms?
-
声明希望显而易见,在应用程序语言中执行此操作将更好地使用适当的工具。
-
@Rams 因为mysql没有dateadd()函数,只有date_add(),问题中的代码是针对ms sql server的。删除了 mysql 标签。
标签: sql sql-server dateadd