首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL查伦格

SQL查伦格
EN

Stack Overflow用户
提问于 2021-10-18 21:24:06
回答 1查看 274关注 0票数 0

我想用AMDP方法中的纯SQL语句来解决这个问题,我可以在ABAP中轻松地解决这个问题,甚至在使用循环的AMDP方法中也是如此,但是正如我所说的,我想用SQL语句来解决这个问题,而不需要使用任何类型的循环。

请看一下这张图片:

我有两列,第一列是D,第二列是E

D列是SELECT SUM的结果,但E列是计算的列,它应该按照以下方式工作:

两列的第一行均为等于D1

  • In (第二行),第二行( E2 = E1 + D2

  • In ),第四行( E3 = E2 + D3

  • In ),[ E4 ]= E3 + D4

  • And等。

就是这样。是否可以用纯SQL语句来解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2021-10-18 21:31:41

将和放在子查询中,然后从该子查询中进行选择以及行号。将其插入临时表中。然后从该临时表中选择,并根据行号对同一表执行连接,查找前一行。

代码语言:javascript
复制
SELECT D, ROW_NUMBER() AS ROW_NUM
INTO #TempTable
FROM (SELECT SUM() AS D FROM table) a

SELECT
    t1.D
    ,CASE
        t2.D IS NULL THEN t1.D
        ELSE t2.D + t1.D AS E
FROM #TempTable t1
    LEFT JOIN #TempTable t2 ON t1.ROW_NUM = t2.ROW_NUM + 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69622709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档