You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将SQL生成的2020-07-01至2020-07-31日期列表插入table1?

将生成的日期列表插入到table1表的方法

你可以直接使用INSERT INTO ... SELECT语法,把CTE生成的日期结果插入到目标表table1中,具体修改后的代码如下:

declare @startdate date = '2020-07-01';
declare @enddate date = '2020-07-31';

with dates as 
(
    select @startdate as orderdate
    union all 
    select dateadd(dd, 1, orderdate)
    from dates
    where dateadd(dd, 1, orderdate) <= @enddate
)
-- 将原SELECT语句替换为INSERT INTO,指定目标表和对应列
insert into table1 (你的日期列名) -- 替换为table1中实际存储日期的列名,比如orderdate
select orderdate 
from dates 
option (maxrecursion 0); -- 当日期跨度超过100天时,需添加此选项解除递归次数限制

关键注意点:

  • 确保table1存在一个日期类型的列(如date或datetime),列名要与INSERT语句中指定的名称匹配;如果列名和CTE里的orderdate一致,可简化为insert into table1 select orderdate from dates ...
  • 若生成的日期范围超过100天,必须添加option (maxrecursion 0),否则SQL Server会抛出递归次数超限的错误

内容的提问来源于stack exchange,提问作者Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 06:40:29