Hive-之posexplode函数查询startDate~endDate之间的所有日期

2023-12-10 13:33

本文主要是介绍Hive-之posexplode函数查询startDate~endDate之间的所有日期,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Hive-之posexplode函数实现查询startDate~endDate之间的所有日期

  • 需求:目前需要动态找到 20200603~20200607之间的所有日期
-- 初始数据集
SET hive.exec.mode.local.auto=true;
WITH temp1 AS (
select 'name1' as uid,'2020-06-03' as start_date, '2020-06-07' as end_date 
UNION ALL 
select 'name2' as uid,'2020-05-03' as start_date, '2020-05-12' as end_date 
)-- 查询SQL
SELECT
*,
t.pos,
DATE_ADD(start_date,t.pos) AS real_shengxiao_time
FROM temp1 
LATERAL VIEW POSEXPLODE(SPLIT(SPACE(datediff(end_date,start_date)),'')) t AS pos,empty_string
  • 查询结果如下:
uid       start_date        end_date   pos   empty_string pos   real_shengxiao_time
name1   2020-06-03      2020-06-07      0                 0       2020-06-03
name1   2020-06-03      2020-06-07      1                 1       2020-06-04
name1   2020-06-03      2020-06-07      2                 2       2020-06-05
name1   2020-06-03      2020-06-07      3                 3       2020-06-06
name1   2020-06-03      2020-06-07      4                 4       2020-06-07
name2   2020-05-03      2020-05-12      0                 0       2020-05-03
name2   2020-05-03      2020-05-12      1                 1       2020-05-04
name2   2020-05-03      2020-05-12      2                 2       2020-05-05
name2   2020-05-03      2020-05-12      3                 3       2020-05-06
name2   2020-05-03      2020-05-12      4                 4       2020-05-07
name2   2020-05-03      2020-05-12      5                 5       2020-05-08
name2   2020-05-03      2020-05-12      6                 6       2020-05-09
name2   2020-05-03      2020-05-12      7                 7       2020-05-10
name2   2020-05-03      2020-05-12      8                 8       2020-05-11
name2   2020-05-03      2020-05-12      9                 9       2020-05-12

这篇关于Hive-之posexplode函数查询startDate~endDate之间的所有日期的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/477248

相关文章

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

从入门到精通MySQL联合查询

《从入门到精通MySQL联合查询》:本文主要介绍从入门到精通MySQL联合查询,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下... 目录摘要1. 多表联合查询时mysql内部原理2. 内连接3. 外连接4. 自连接5. 子查询6. 合并查询7. 插入查询结果摘要前面我们学习了数据库设计时要满

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

MySQL count()聚合函数详解

《MySQLcount()聚合函数详解》MySQL中的COUNT()函数,它是SQL中最常用的聚合函数之一,用于计算表中符合特定条件的行数,本文给大家介绍MySQLcount()聚合函数,感兴趣的朋... 目录核心功能语法形式重要特性与行为如何选择使用哪种形式?总结深入剖析一下 mysql 中的 COUNT

MySQL 中 ROW_NUMBER() 函数最佳实践

《MySQL中ROW_NUMBER()函数最佳实践》MySQL中ROW_NUMBER()函数,作为窗口函数为每行分配唯一连续序号,区别于RANK()和DENSE_RANK(),特别适合分页、去重... 目录mysql 中 ROW_NUMBER() 函数详解一、基础语法二、核心特点三、典型应用场景1. 数据分