SQL进阶技巧:如何按任意时段分析时间区间问题? | 分区间讨论【左、中、右】

目录

0 场景描述

1 数据准备

2 问题分析

方法1:分情况讨论,找出重叠区间

方法2:暴力美学法。按区间展开成日期明细表

3 拓展案例

4小结


0 场景描述

现有用户还款计划表 user_repayment ,该表内的一条数据,表示用户在指定日期区间内 [date_start, date_end] ,每天还款 repayment 元。

如何统计任意时段内(如:2024-01-15至2024-01-16)每天所有用户的应还款总额?

1 数据准备

with user_repayment as (
    select stack(
        3,
        '101', '2024-01-01', '2024-01-15', 10,
        '102', '2024-01-05', '2024-01-20', 20,
        '103', '2024-01-10', '2024-01-25', 30
   

你可能感兴趣的:(#,SQL进阶实战技巧,数字化建设通关指南,sql,数据库,mysql,数据分析,数据仓库,hive)