如何从未确定的组中获取第一个值
Posted
技术标签:
【中文标题】如何从未确定的组中获取第一个值【英文标题】:How to get the first value from an undetermined group 【发布时间】:2021-12-27 14:15:15 【问题描述】:谁能帮我解决这个问题,我正在使用 Athena,我正在寻找一些解决方案,Athena 不支持变量,那么我该如何填写 sessao
呢?
【问题讨论】:
你应该把你当前的查询放在问题中——作为文本,使用“代码”格式,不是嵌入图像。 【参考方案1】:假设空值意味着空值 - 您可以使用 last_value
窗口函数和 ignore nulls
选项:
WITH dataset(value, ts) AS (
values ('a', timestamp '2012-08-08 01:00'),
(null, timestamp '2012-08-08 01:01'),
(null, timestamp '2012-08-08 01:02'),
('b', timestamp '2012-08-08 02:00'),
(null, timestamp '2012-08-08 02:01')
)
SELECT coalesce(value, last_value(value) ignore nulls over (order by ts)) value, ts
FROM dataset
输出:
value | ts |
---|---|
a | 2012-08-08 01:00:00.000 |
a | 2012-08-08 01:01:00.000 |
a | 2012-08-08 01:02:00.000 |
b | 2012-08-08 02:00:00.000 |
b | 2012-08-08 02:01:00.000 |
【讨论】:
按预期工作,感谢大师以上是关于如何从未确定的组中获取第一个值的主要内容,如果未能解决你的问题,请参考以下文章