专栏名称: 会飞的一十六
一个专注大于大数据、数据库、数据分析、相关领域的公众号,分享技术干货、学习资料、面试、职场经验和个人思考感悟,更重要的是让SQLBOY的SQL有质的飞越。
目录
相关文章推荐
爱否科技  ·  iQOO Z9 Turbo ... ·  10 小时前  
爱否科技  ·  iQOO Z9 Turbo ... ·  4 天前  
今天看啥  ›  专栏  ›  会飞的一十六

SQL进阶技巧:如何使数组中的固定参数动态化? | SQL中的滑动窗口如何实现?

会飞的一十六  · 公众号  ·  · 2024-11-03 10:50
    

文章预览

点击上方【蓝色】字体   关注我们 01 场景描述 在表中有一堆学生记录。 school stduent_id start_date end_date 222 123 2019-02-03 2023-02-03 222 345 2015-02-03 2019-02-03 222 567 2021-02-03 2024-02-03 (1)我想计算每所学校每年有多少学生,比如从 2017 年一直到 2024 年。 (2) 我希望在年份移动时自动更新,例如,现在应该是 2017-2024,明年应该是 2018-2025。 02 数据准备 create table student as ( select stack( 3 , 222 , 123 , '2019-02-03' , '2023-02-03' , 222 , 345 , '2015-02-03' , '2019-02-03' , 222 , 567 , '2021-02-03' , '2024-02-03' ) as (school,student,start_date,end_date) ); 03 问题分析 问题1分析 第一步:利用lateral view explode展成明细数据 SELECT * FROM student LATERAL VIEW EXPLODE ( ARRAY ( 2017 , 2018 , 2019 , 2020 , 2021 , 2022 , 2023 , 202 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览