【发布时间】:2021-07-28 15:05:28
【问题描述】:
我正在尝试汇总重叠的生效日期。日期之间的任何间隔都应视为单独的行。我正在使用最小值和最大值,但我的输出低于预期,但希望看到预期的输出。
我的查询
WITH test_data AS (
SELECT '2020-01-01' AS date_from,
'2020-01-03' AS date_to,
'1' AS product
UNION ALL
SELECT '2020-01-05' AS date_from,
'2020-01-07' AS date_to,
'1' AS product
UNION ALL
SELECT '2020-01-06' AS date_from,
'2020-01-10' AS date_to,
'1' AS product
)
SELECT product,
MIN(date_from) AS date_from,
MAX(date_to) AS date_to
FROM test_data
GROUP BY 1;
源数据
| date_from | date_to | product |
|---|---|---|
| 2020-01-01 | 2020-01-03 | 1 |
| 2020-01-05 | 2020-01-07 | 1 |
| 2020-01-06 | 2020-01-10 | 1 |
输出表
| date_from | date_to | product |
|---|---|---|
| 2020-01-01 | 2020-01-10 | 1 |
预期输出
| date_from | date_to | product |
|---|---|---|
| 2020-01-01 | 2020-01-03 | 1 |
| 2020-01-05 | 2020-01-10 | 1 |
提前致谢!
【问题讨论】:
-
能否将您提出的查询添加到您的问题中?这将有助于其他人了解您尝试过的内容以及需要修复的内容。
-
我想你在找this
-
@DominikGolebiewski 。 . .用您正在使用的数据库标记您的问题。
标签: sql snowflake-cloud-data-platform snowflake-schema