帆软

如果第二行lotid字段值中包含第一行lotid的字段值,那么就将第二行中为空的值,使用第一行的值填充,如果都为空就不管,这个能实现吗image.png

SQL yzmknpQp2068966 发布于 2023-5-26 09:18 (编辑于 2023-5-26 09:19)
1min目标场景问卷 立即参与
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
1592Lv6高级互助
发布于2023-5-26 09:43

初步思路:层次坐标

相对层次坐标-https://help.fanruan.com/finereport/doc-view-3802.html

image.png

可上传内置模板看下

  • yzmknpQp2068966 yzmknpQp2068966(提问者) 好麻烦,我找到了个sqlCASE WHEN SUBSTR( TOTAL_STANDARDCT, 1, 13 ) = SUBSTR( LAG ( TOTAL_STANDARDCT ) OVER ( ORDER BY \"LotId\" ), 1, 13 ) THEN COALESCE( TOTAL_STANDARDCT, LAG ( TOTAL_STANDARDCT ) OVER ( ORDER BY \"LotId\" ) ) ELSE TOTAL_STANDARDCT END AS TOTAL_STANDARDCT,
    2023-05-26 11:12 
  • 1592 1592 回复 yzmknpQp2068966(提问者) 能解决就好
    2023-05-26 11:13 
最佳回答
0
yzmknpQp2068966Lv2见习互助
发布于2023-5-29 17:03

  CASE

         WHEN SUBSTR("LotId", 1, 13) =

              SUBSTR(LAG("LotId") OVER(ORDER BY "LotId"), 1, 13) AND

              SPUTTER_OpCT IS NULL THEN

          COALESCE(LAG(SPUTTER_OpCT) OVER(ORDER BY "LotId"),

                   LAG(SPUTTER_OpCT, 2) OVER(ORDER BY "LotId"),

                   LAG(SPUTTER_OpCT, 3) OVER(ORDER BY "LotId"))

         ELSE

          SPUTTER_OpCT

       END AS "SPUTTER_OpCT",

  • 1关注人数
  • 257浏览人数
  • 最后回答于:2023-5-29 17:03
    请选择关闭问题的原因
    确定 取消
    返回顶部