【发布时间】:2021-12-13 01:27:29
【问题描述】:
编辑:在下面的帖子中做了一些澄清
我正在尝试解决一个表缺少时间戳的问题。假设有一个这样的表:
| Timestamp | NumericField |
|---|---|
| 2021-10-24 16:59:00.000 | 101 |
| 2021-10-24 16:57:00.000 | 101 |
我想尝试做两件事:
-
填充时间戳为 2021-10-24 16:58:00.000 的第三条记录。
-
除此之外,如果领先和滞后记录匹配,我想将 NumericField 字段填充为 101,就像在这个例子中一样。结果是:
| Timestamp | NumericField |
|---|---|
| 2021-10-24 16:59:00.000 | 101 |
| 2021-10-24 16:58:00.000 | 101 |
| 2021-10-24 16:57:00.000 | 101 |
如果超前和滞后 NumericField 记录不匹配,则生成的 NumericField 将导致 null。例如:
| Timestamp | NumericField |
|---|---|
| 2021-10-24 16:59:00.000 | 101 |
| 2021-10-24 16:58:00.000 | NULL |
| 2021-10-24 16:57:00.000 | 100 |
我发布这个问题的原因是 Presto 不支持递归 CTE,我找不到任何好的资源来帮助我解决这个问题。
【问题讨论】: