【发布时间】:2020-02-02 16:35:22
【问题描述】:
以下是示例源数据:
预期输出如下:
数据基本上按 A_ID、B_ID、C_ID 分组,然后在每次 GR_CNT 为 NULL 时,为上述行复制 GR_MATERIAL 和 GR_SERIAL 的相应值。 LAST_DT 和 DATE_TIME 按升序排列。
以下是我尝试过的查询,但我不确定如何获取位于数据中间的 GR_MATERIAL 和 GR_SERIAL 的值。
sel a.*,coalesce(max(GR_MATERIAL) over (partition by A_ID, B_ID, C_ID order by LAST_DT,DATE_TIME), -1) as col2,<br>
coalesce(max(GR_SERIAL) over (partition by A_ID, B_ID, C_ID order by LAST_DT,DATE_TIME), -1) as col3<br>
from table a<br>
为 GR_MATERIAL 和 GR_SERIAL 创建两个具有所需值的新列也可以。
我正在使用 TD16
【问题讨论】:
标签: sql teradata teradata-sql-assistant