Hive常用的內置函數

文章目錄

  • 聚合類
        • 1.指定列值的數目
        • 2.指定列值求和
        • 3.最大值
        • 4.最小值
        • 5.平均值
        • 6.中位數函數
        • 7.分位數函數
  • 數值類
        • 1.取整函數Round(a)
        • 2.指定精度取整ROUND(double a,int b)
        • 3.向上取整FLOOR()
        • 4.向下取整CEIL()
        • 5.隨機數 rand()
        • 6.絕對值函數
  • 日期類
        • 獲取當前日期
        • 獲取當前時間戳
        • 日期前后
        • 日期間隔
        • bigint類型的時間戳
        • 日期轉換函數, 只保留 年月日
        • 日期 提取函數
        • 獲取年份
        • 提取月份
  • 字符串
        • 計算長度
        • 截取
        • 大寫
        • 小寫
        • 去除空格
        • 獲取url中的域名
        • 獲取搜索內容
        • 字符串分割
        • 從map中取值
        • 從string類型的k-v中取值

聚合類

1.指定列值的數目

count()

2.指定列值求和

sum()

3.最大值

max()

4.最小值

min()

5.平均值

avg()

6.中位數函數

percentile(bigint col,p)

7.分位數函數

percentile(bigint col,0.5)

數值類

1.取整函數Round(a)
select rount(99.4567)

在這里插入圖片描述
四舍五入計算

2.指定精度取整ROUND(double a,int b)

取b位小數四舍五入

3.向上取整FLOOR()
4.向下取整CEIL()
5.隨機數 rand()

值從0-1

6.絕對值函數

abs()

日期類

獲取當前日期
select CURRENT_DATE 

2024-07-03

獲取當前時間戳
select CURRENT_TIMESTAMP  #### 2024-07-03 11:11:04
日期前后
select date_sub(CURRENT_DATE,1)
select date_add(CURRENT_DATE,1)
日期間隔
select datediff(CURRENT_DATE,'1991-10-04')
select datediff('2024-05-01','1991-10-04')
bigint類型的時間戳
select unix_timestamp('2020-10-01 00:00:00')

1601510400(秒): 從 1970-01-01 00:00:00 到 2020-10-01 00:00:00 過了多少秒

select unix_timestamp()                   

將 bigint 類型的時間戳轉換成 我們想要的日期格式

    select from_unixtime(1719976610,'yyyy-MM-dd hh:mm:ss')select from_unixtime(1719976610,'yyyy-MM')
日期轉換函數, 只保留 年月日
select  to_date('2024-04-09 10:09:45')
日期 提取函數
	year | month | day | hour | minute 
獲取年份
select   substr('2024-04-09 10:09:45',1,4)
select  year('2024-04-09 10:09:45')
提取月份
select   substr('2024-04-09 10:09:45',6,2)
select  month('2024-04-09 10:09:45')

字符串

計算長度
select length("abcde")
截取
substr()
大寫
upper
小寫
lower
去除空格

trim

獲取url中的域名

parse_url

select parse_url('https://editor.csdn.net/md?not_checkout=1','HOST')

會返回
editor.csdn.net

獲取搜索內容

parse_url

select parse_url('https://editor.csdn.net/md?not_checkout=1','QUERY')

會返回
not_checkout=1

字符串分割
select split('abc,xyz,yyy',',')
從map中取值
select  extra2['systemtype'] from user_info
從string類型的k-v中取值
 select  get_json_object(extra1,'$.systemtype') from user_info

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/38639.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/38639.shtml
英文地址,請注明出處:http://en.pswp.cn/web/38639.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++:枚舉類的使用案例及場景

一、使用案例 在C中,枚舉類(也稱為枚舉類型或enum class)是C11及以后版本中引入的一種更加強大的枚舉類型。與傳統的枚舉(enum)相比,枚舉類提供了更好的類型安全性和作用域控制。下面是一個使用枚舉類的案…

(linux系統服務)Linux下yum源配置實戰

一、Linux下軟件包的管理 1、軟件安裝方式 ① RPM包管理(需要單獨解決依賴問題) ② YUM包管理(需要有網絡及YUM倉庫的支持,會自動從互聯網下載軟件,自動解決依賴) ③ 源碼安裝(安裝過程比較…

總體設計在軟件設計中的意義

總體設計(High-Level Design, HLD)是軟件開發生命周期中的一個關鍵階段,旨在從宏觀層面定義系統的結構和主要組件。總體設計的目標是為詳細設計和實現提供一個清晰的框架和藍圖。 總體設計的意義 明確系統架構:總體設計幫助開發…

基于Java的外賣點餐系統設計與實現

作者介紹:計算機專業研究生,現企業打工人,從事Java全棧開發 主要內容:技術學習筆記、Java實戰項目、項目問題解決記錄、AI、簡歷模板、簡歷指導、技術交流、論文交流(SCI論文兩篇) 上點關注下點贊 生活越過…

深?理解 JVM 底層原理、垃圾回收機制,能通過mat、jstat進行JVM參數調優

深入理解JVM(Java虛擬機)底層原理和垃圾回收機制是Java開發者和系統管理員的重要技能,尤其是在性能調優方面。下面是一些關鍵點,幫助你更好地理解這些概念: ### JVM 底層原理 1. **類加載機制**:JVM如何加…

java+mysql教師管理系統

完整源碼地址 教師信息管理系統使用命令行交互的方式及數據庫連接實現教師信息管理系統,該系統旨在實現教師信息的管理,并根據需要進行教師信息展示。該軟件的功能有如下功能 (1)基本信息管理(教師號、姓名、性別、出生年月、職稱、學歷、學位、教師類型…

25西安電子科技大學研究生政策(最新)

25西安電子科技大學研究生政策(最新) 01全國研究生報名情況 全國研究生報名人數438萬,首次下降超36萬人。 02西電研究生全日制/非全日制報名情況 西電碩士研究生報考錄取情況(包含全日制、非全日制),2024年…

python-數據容器對比總結

基于各類數據容器的特點,它們的應用場景如下: 數據容器的通用操作 - 遍歷 數據容器的通用統計功能 容器的通用轉換功能 容器通用排序功能 容器通用功能總覽

C-特性和新特性

C特性和新特性 C11 C11是C編程語言的一個重要標準版本,是C98標準發布后13年來的第一次重大修正,它引入了許多新特性和改進,極大地增強了C語言的表達能力和開發效率。 C11是C編程語言的一個重要標準版本,由國際標準化組織(ISO)和…

如何在Java中實現自定義數據結構:從頭開始

如何在Java中實現自定義數據結構:從頭開始 大家好,我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編,也是冬天不穿秋褲,天冷也要風度的程序猿!今天我們將探討如何在Java中實現自定義數據結構&#xff…

一文徹底搞懂Transformer - Input(輸入)

一、輸入嵌入(Input Embedding) 詞嵌入(Word Embedding):詞嵌入是最基本的嵌入形式,它將詞匯表中的每個單詞映射到一個固定大小的向量上。這個向量通常是通過訓練得到的,能夠捕捉單詞之間的語義…

HTTP入門

入門HTTP協議 1. 原理介紹 爬蟲就是用程序模擬瀏覽器的行為,發送請求給服務器,獲取網頁的內容,解析網頁數據。 要學會爬蟲,先要了解瀏覽器是如何和服務器交流的。瀏覽器通過HTTP協議和服務器交流。 2. HTTP協議簡介 2.1…

第4篇 區塊鏈的優勢與挑戰:為什么區塊鏈如此重要?

區塊鏈聽起來像是一種高科技的魔法,很多人都想知道它到底是怎么回事,為什么會引起如此大的關注。今天,我們就來揭開區塊鏈的神秘面紗,看看它的優勢和挑戰,順便聊聊為什么它會變得如此重要。 優勢篇 1. 去中心化&…

【pg】去除pg數據庫字段值中的空格

如何批量去除PostgreSQL數據庫字段值中的空格 在處理數據庫中的數據時,經常會遇到字段值末尾帶有多余空格的問題。這些空格可能是用戶輸入錯誤或數據遷移過程中引入的,可能會影響數據的準確性和一致性。本文將介紹如何使用 PostgreSQL 的 SQL 語句批量去…

The Forest Enemy Pack(2D動畫角色游戲模型)

這個包包含14個適用于platformer和2d rpg游戲的動畫角色。 動畫總幀數:1785 用于動畫的所有精靈都具有透明背景,并準備有1500x1200和750x600兩種尺寸。 對于每個角色,你也可以找到具有單獨身體部位的精靈表,這樣你就可以輕松地制作自己的動畫。它們有PNG和PSD格式。 示例場…

對MVC的理解以及如何實現一個簡單的MVC

IOC 容器與 Controller: 在 Spring 框架中,所有的 Controller 都會被 Spring 的 IOC 容器管理。當應用程序啟動時,Spring 會掃描所有帶有 Controller 注解的類,并將它們作為 Bean 注冊到 IOC 容器中。 方法掃描與 Dispatcher&am…

強化學習-5 策略梯度、Actor-Critic 算法

文章目錄 1 基于價值( value-based \text{value-based} value-based )算法的缺點2 策略梯度算法2.1 解釋2.1.1 分母和分子相消2.1.2 對數函數的導數2.1.3 組合公式2.1.4 總結 3 REINFORCE算法4 策略梯度推導進階4.1 平穩分布4.2 基于平穩分布的策略梯度…

Python游戲腳本開發之大漠插件

自動化 文章目錄 自動化前言一、開發環境二、免注冊調用三、創建大漠對象四、注冊五、大漠功能調用六、整體代碼 前言 大漠插件是集前后臺,文字識別,圖色,鍵鼠,窗口,內存,DX,Call等功能于一身的…

HSP_13章 Python_魔術方法

文章目錄 P132 魔術方法1. 魔術方法的基本介紹2. 常見的魔術方法2.1 __str__2.2 __eq__2.3 其它的幾個魔術方法 P132 魔術方法 參考文檔 1. 魔術方法的基本介紹 2. 常見的魔術方法 2.1 str # 請輸出Monster[name,job,sal]對象的屬性信息 #可以根據需要…

(1, ‘[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1124)

WARNING: Retrying (Retry(total4, connectNone, readNone, redirectNone, statusNone)) after connection broken by SSLError(SSLError(1, [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1124))): /pypi/simple/urllib3/ pip install的時候遇到這個錯誤 第一步…