cau1iflower 最近的时间轴更新
cau1iflower

cau1iflower

V2EX 第 601175 号会员,加入于 2022-11-09 13:04:45 +08:00
cau1iflower 最近回复了
2022-12-07 08:48:53 +08:00
回复了 wloverine 创建的主题 程序员 Hive SQL 题求教
@cau1iflower
```
SELECT item_id, price,
-- 如果当前价格和前一个价格不同,那么这个价格的起始时间就是当前日期。
-- 否则,起始时间就是前一个价格的起始时间。
CASE WHEN price != LAG(price) OVER (PARTITION BY item_id ORDER BY date)
THEN date
ELSE LAG(start_date) OVER (PARTITION BY item_id ORDER BY date)
END AS start_date,
-- 如果当前价格和后一个价格不同,那么这个价格的结束时间就是后一个价格的起始时间。
-- 否则,这个价格的结束时间就是 NULL 。
CASE WHEN price != LEAD(price) OVER (PARTITION BY item_id ORDER BY date)
THEN LEAD(start_date) OVER (PARTITION BY item_id ORDER BY date)
ELSE NULL
END AS end_date
FROM prices

```
2022-12-07 08:46:23 +08:00
回复了 wloverine 创建的主题 程序员 Hive SQL 题求教
ChatGPT 了解一下
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6011 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 16ms · UTC 02:39 · PVG 10:39 · LAX 18:39 · JFK 21:39
Developed with CodeLauncher
♥ Do have faith in what you're doing.