hive 函数
一、日期函数
1 date_add 指定日期n天之后,用法:date_add(date('2018-09-09'),10) 参数类型分别为date和int,返回date类型 2 add_months 指定日期n月之后,用法:add_months(date('2018-09-09'),2) 参数类型分别为date和int类型,返回date类型 3 datediff 计算两个日期相差天数,用法:datediff(date('2018-09-19'),date('2018-09-09'))参数类型都为date类型,返回值int 4 dayofmonth 返回日期中的日,用法:dayofmonth(date('2018-09-09'))参数类型为date类型,返回值int 5 weekofyear 返回日期在一年中的周数,用法:weekofyear(date('2018-09-09'))参数类型为date类型,返回值int 6 to_date 返回时间戳中的日期部分,用法:to_date(cast('2018-09-09 12:00:00' as timestamp))或to_date(date('2018-09-09'))参数类型为timestamp时间戳或date类型,返回值为string, 7 unix_timestamp 将日期转为unix时间戳,用法:unix_timestamp(datedate('2018-09-19'))参数类型为date类型,返回值bigint 8 year 返回日期或时间戳的年份,用法:year(date('2018-09-19'))参数类型为date类型或timestamp类型,返回值int类型 9 quarter 返回日期或时间戳的季度,用法:quarter(date('2018-09-19'))参数类型为date类型或timestamp类型,返回值int类型 10 month 返回日期或时间戳的月份,用法:month(date('2018-09-19'))参数类型为date类型或timestamp类型,返回值int类型 11 day 返回日期或时间戳的天,用法:day(date('2018-09-19'))参数类型为date类型或timestamp类型,返回值int类型 12 hour 返回时间戳中的小时,用法:hour(timestamp('2009-07-30 12:58:59'))参数类型为时间戳类型,返回值int类型 13 minute 返回时间戳中的分钟,用法:minute(timestamp('2009-07-30 12:58:59'))参数类型为时间戳类型,返回值int类型 14 second 返回时间戳中的秒数,用法:second(timestamp('2009-07-30 12:58:59'))参数类型为时间戳类型,返回值int类型 15 date_sub 返回指定日期n天之前日期,用法:date_sub(date('2018-09-09'),5) 参数类型分别为date和int,返回date类型 16 current_date、current_timestamp 返回当前日期、当前时间戳,用法:select current_date,current_timestamp 返回当前日期、当前时间戳作为字段
1 select date_add(date('2018-09-09'),10) -- 返回:2018-09-19 2 select add_months(date('2018-09-09'),2) -- 返回:2018-11-09 3 select datediff(date('2018-09-19'),date('2018-09-09')) -- 返回:10 4 select dayofmonth(date('2018-09-09')) -- 返回:9 5 select weekofyear(date('2018-09-09')) -- 返回:36 6 select to_date(cast('2018-09-09 12:00:00' as timestamp)) 7 select to_date(date('2018-09-09')) -- 返回 :2018-09-09 8 select unix_timestamp(date('2018-09-19')) -- 返回:1537286400 9 select year(date('2018-09-19')) --返回:2018 10 select quarter(date('2018-09-19')) --返回:3 11 select month(date('2018-09-19')) --返回:09 12 select day(date('2018-09-19')) --返回:19 13 select hour(timestamp('2009-07-30 12:58:59')) --返回:12 14 select minute(timestamp('2009-07-30 12:58:59')) --返回:58 15 select second(timestamp('2009-07-30 12:58:59')) --返回:59 16 select date_sub(date('2018-09-09'),5) -- 返回:2018-09-04 17 select current_date,current_timestamp--返回:2018-10-092018-10-09 17:14:25.868
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人