Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops 在Teradata上编写循环_Loops_Stored Procedures_Teradata - Fatal编程技术网

Loops 在Teradata上编写循环

Loops 在Teradata上编写循环,loops,stored-procedures,teradata,Loops,Stored Procedures,Teradata,我在Teradata中编写的存储过程不多,我正在努力获得所需的结果。我相信这一定是一个相对容易的过程:) 我需要计算三列的总和——库存、销售和交货销售实际上是一个负值。求和的结果需要给我下一行的股票。如果三列之和首先计算基于初始库存和每周销售和交付的运行总额。然后在此结果上计算运行分钟数,如果为负值,则调整运行总数: SELECT ... running_total - Min(Least(running_total, 0)) Over (PARTITION BY Prod

我在Teradata中编写的存储过程不多,我正在努力获得所需的结果。我相信这一定是一个相对容易的过程:)


我需要计算三列的总和——库存、销售和交货<代码>销售实际上是一个负值。求和的结果需要给我下一行的
股票
。如果三列之和首先计算基于初始库存和每周销售和交付的运行总额。然后在此结果上计算运行分钟数,如果为负值,则调整运行总数:

SELECT ...
   running_total - 
   Min(Least(running_total, 0)) 
   Over (PARTITION BY Product
         ORDER BY Week
         ROWS Unbounded Preceding) as stock_for_next_week
FROM
 ( SELECT ...
      First_Value(stock) -- initial stock
      Over (PARTITION BY Product
            ORDER BY Week) +
      Sum(sales+deliveries) -- weekly numbers
      Over (PARTITION BY Product
            ORDER BY Week
            ROWS Unbounded Preceding) AS running_total
   FROM tab
 ) AS dt

展示您尝试的东西会很好您可能不需要一个循环,只需展示一些示例数据和预期结果result@dnoeth我在正文中添加了更多的上下文,谢谢