2

我想每次插入一行日期 + 1。这是一个简单的 SQL 循环。我使用的是 SSIS,所以 StartDate 和 Enddate 是变量。

这是我的代码:

WITH View_Solidnet_Training AS
(
    SELECT CAST('2013-04-09' AS DATETIME) DateValue
    UNION ALL

    SELECT DateValue + 1
    FROM   View_Solidnet_Training
    WHERE  DateValue + 1 < '2013-04-11'
)
INSERT INTO OBJ_Availability
VALUES
  SELECT 34,
         DateValue + 1,
         'AM',
         2,
         'Test'
  FROM   View_Solidnet_Training;

错误信息:

消息 156,级别 15,状态 1,第 11 行关键字“选择”附近的语法不正确。

4

1 回答 1

1

不需要VALUESinINSERT...SELECT声明。

代替

INSERT INTO OBJ_Availability
VALUES
  SELECT 34,
         DateValue + 1,
         'AM',
         2,
         'Test'
  FROM   View_Solidnet_Training;

INSERT INTO OBJ_Availability
SELECT 34,
       DateValue + 1,
       'AM',
       2,
       'Test'
FROM   View_Solidnet_Training;
于 2013-04-09T07:49:40.593 回答