检查HIVE分区是否连续

检查HIVE分区是否连续

我们经常可能会有这样的诉求,需要对一张目标表进行分区检查,查看是否存在不连续的情况,该诉求频繁且重要,因此以下语句可以实现我们的诉求

场景描述

我们有一张表,表名 t_user_info,分区字段 ds,分区字段数据类型 String,分区数据格式 yyyyMMdd

分区连续性检查语句

sql 复制代码
SELECT  ds
       ,rn
       ,date_sub(ds_format, rn)
FROM
(
    -- 对分区数据进行类型转换
    SELECT  ds
           ,from_unixtime(unix_timestamp(ds, 'yyyyMMdd'), 'yyyy-MM-dd') as ds_format
           ,row_number() over(order by ds asc) rn -- 排序分区,按照ds升序
    FROM
    (
       -- 获取表中的所有分区数据 
       SELECT  ds
       FROM t_user_info
       -- 指定分区检查的时间段
       WHERE ds between '20221231' and '20230924'
       group by ds
    ) ds_info
) diff_ds_info
limit 1000
;
相关推荐
时差95314 小时前
【面试题】Hive 查询:如何查找用户连续三天登录的记录
大数据·数据库·hive·sql·面试·database
苍老流年14 小时前
Hive中各种Join的实现
数据仓库·hive·hadoop
静听山水14 小时前
Hive:UDTF 函数
hive
EDG Zmjjkk15 小时前
Hive 查询(详细实操版)
数据仓库·hive·hadoop
lzhlizihang16 小时前
【Hive sql 面试题】求出各类型专利top 10申请人,以及对应的专利申请数(难)
大数据·hive·sql·面试题
Hsu_kk16 小时前
Hive 查询各类型专利 Top 10 申请人及对应的专利申请数
数据仓库·hive·hadoop
静听山水16 小时前
Hive 的数据存储单元结构
hive
大数据编程之光16 小时前
Hive 查询各类型专利 top10 申请人及专利申请数
大数据·数据仓库·hive·hadoop
杰克逊的日记16 小时前
Hive详解
数据仓库·hive·hadoop
上辈子杀猪这辈子学IT17 小时前
【Zookeeper集群搭建】安装zookeeper、zookeeper集群配置、zookeeper启动与关闭、zookeeper的shell命令操作
linux·hadoop·zookeeper·centos·debian