数仓面试——日期交叉问题

本文探讨了在数据仓库面试中常见的日期交叉问题,通过三个不同方法解决如何计算每种电脑品牌促销的天数。涉及SQL解决方案,包括时间拆解、时间排序和日期展开去重,并对各方法进行了详细解释。

Hi, 我是小萝卜算子

一、简介

日期交叉去重问题,是一个经典sql,本文以一个电脑品牌促销的例子从不同的角度来看待解析这个问题,有更好方法的同学,欢迎私下交流...

二、表结构

CREATE TABLE `computer_promotion`(

  `brand` string COMMENT '用户主键'

  `start_date` string COMMENT '开始日期'

  `end_date` string COMMENT '结束日期')

三、表数据

brand        start_date        end_date

lenovo        2022-02-03        2022-02-07

lenovo        2022-02-10        2022-02-23

asus        2022-02-08        2022-02-24

asus        2022-02-13        2022-02-17

asus        2022-02-15        2022-02-28

dell  &nb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小萝卜算子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值