小编Dav*_*mir的帖子

CTE 语句中关键字“OPTION”附近的语法不正确

尝试在 SQL Server 2008 中保存视图时,出现“关键字‘OPTION’附近的语法不正确”错误。我尝试将 MAXRECURSION 选项添加到公用表表达式的末尾。我见过的所有示例以及我之前创建的工作 CTE 都不介意 CTE 末尾的“选项(MAXRECURSION 0)”。

有人知道我为什么会收到此错误吗?CTE 在没有 OPTION 子句的情况下工作,尽管它达到了最大递归数 (100)。

WITH CTE AS
(
  SELECT
    CDay,
    InvAcct,
    BuyerCode,
    PartNumber,
    ROP,
    ROP_ROQ,
    DailyDemand,
    StartingInvQty,
    SchedDeliveryQty,
    CAST(StartingInvQty - DailyDemand/2.0 AS decimal(18,4)) AS ProjInvQty
  FROM
    qryInventorySimulation
  WHERE
    MBC = 'B' AND
    CDay = CAST(CAST(GETDATE()AS date) as datetime)

  UNION ALL

  SELECT
    qryInventorySimulation.CDay,
    qryInventorySimulation.InvAcct,
    qryInventorySimulation.BuyerCode,
    qryInventorySimulation.PartNumber,
    qryInventorySimulation.ROP,
    qryInventorySimulation.ROP_ROQ,
    qryInventorySimulation.DailyDemand,
    qryInventorySimulation.StartingInvQty,
    qryInventorySimulation.SchedDeliveryQty,
    CAST(CTE.ProjInvQty + qryInventorySimulation.SchedDeliveryQty - qryInventorySimulation.DailyDemand AS decimal(18,4)) AS ProjInvQty
  FROM
    qryInventorySimulation INNER JOIN CTE ON qryInventorySimulation.InvAcct = …
Run Code Online (Sandbox Code Playgroud)

sql common-table-expression sql-server-2008

6
推荐指数
1
解决办法
1万
查看次数