日期/時間函式

函數說明
add_months按日期新增月份
date_add按日期新增天數
date_format修改日期格式
date_sub從日期減去天數
date_trunc傳回截斷為指定單位的日期
datediff傳回日期之間的天數差
daydayofmonth傳回該月某日
dayofweek傳回星期幾(1-7)
dayofyear傳回一年中的第幾天
from_unixtime以UNIX®時間傳回日期
from_utc_timestamp以UTC時間傳回日期
hour傳回輸入的小時
last_day傳回日期所屬月份的最後一天
minute傳回輸入的分鐘數
month傳回輸入的月份
months_between月數介於
next_day傳回比輸入晚的第一天
quarter傳回輸入的季度
second傳回字串的秒數
to_date將字串轉換為日期。 注意: ​字串​ 必須 ​的格式為yyyy-mm-ddTHH24:MM:SS
to_timestamp將字串轉換為時間戳記。 注意: ​字串​ 必須 ​的格式為yyyy-mm-ddTHH24:MM:SS
to_unix_timestamp將字串轉換為UNIX®時間戳記
to_utc_timestamp將字串轉換為UTC時間戳記
trunc截斷日期
unix_timestamp傳回UNIX®時間戳記
weekday星期(0-6)
weekofyear傳回指定日期在一年中的第幾週
year傳回字串的年份

陣列

函數說明
array使用指定的元素建立陣列
array_contains檢查陣列是否包含值
array_distinct從陣列中移除重複值
array_except傳回第一個陣列中元素的陣列,但不會傳回第二個陣列
array_intersect傳回兩個陣列的交集
array_join將兩個陣列連線在一起
array_max傳回陣列的最大值
array_min傳回陣列的最小值
array_position傳回元素從1開始的位置
array_remove移除等於元素的所有元素
array_repeat建立包含已計算次數的值的陣列
array_sort排序陣列
array_union將陣列聯結在一起,沒有任何重複專案
arrays_zip結合指定陣列的值與指定索引處的原始集合值
cardinality傳回陣列的大小
element_at傳回位置上的元素
explode將陣列元素分隔成多列,不包括null
explode_outer將陣列元素分隔為多個列,包括null
find_in_set傳回陣列以1為基礎的位置
flatten平面化陣列陣列
inline將結構陣列分隔到表格中,不包括Null
inline_outer將結構陣列分隔到表格中,包括null
posexplode將陣列的元素分隔成具有位置的多個列,不包括null
reverse反轉陣列元素
shuffle傳回陣列的隨機排列
slice將陣列設為子集
sort_array依順序排序陣列
zip_with在套用函式之前,將兩個陣列合併為單一陣列

資料型別轉換函式

函數說明
bigint將資料型別變更為bigint
binary將資料型別變更為二進位
boolean將資料型別變更為布林值
type將資料型別變更為指定的型別
date將資料型別變更為日期
decimal將資料型別變更為小數
double將資料型別變更為雙精度型別
float將資料型別變更為浮點數
int將資料型別變更為int
smallint將資料型別變更為smallint
str_to_map從字串建立地圖
string將資料型別變更為字串
struct建立結構
tinyint將資料型別變更為tinyint

轉換和格式化函式

函數說明
ascii傳回數值(ASCII)值
base64將引數變更為base64字串
bin將引數變更為二進位值
bit_length傳回位元長度
charchr傳回ASCII字元
char_lengthcharacter_length傳回字串長度
crc32傳回循環冗餘檢查值
degrees將弧度轉換為度
format_number變更號碼的格式
from_jsonget_json_object從JSON取得資料
hash傳回雜湊值
hex將引數轉換為十六進位值
initcap將字串變更為字首大寫
lcaselower將字串變更為全部小寫
lpad貼上字串的左側
map建立地圖
map_from_arrays從陣列建立地圖
map_from_entries從結構陣列建立地圖
md5傳回md5值
rpad貼上字串的右側
rtrim移除尾端空格
shasha1傳回SHA1值
sha2傳回SHA2值
soundex傳回soundex程式碼
stack將值分隔為列
substrsubstring傳回子字串
to_json傳回JSON字串
translate取代字串中的值
trim移除開頭和結尾字元
ucaseupper將字串變更為全部大寫
unbase64將base64字串轉換為二進位
unhex將十六進位轉換為二進位
uuid傳回UUID

資料評估

函數說明
coalesce傳回第一個非null引數
collect_list傳回非唯一元素清單
collect_set傳回一組不重複元素
concat串連
concat_ws與分隔符號串連
count傳回列的總數
decode使用字元集解碼
elt傳回第n個輸入
encode使用字元集編碼
firstfirst_value傳回第一個值
grouping顯示是否要將欄分組
grouping_id傳回群組層級
instr傳回以1為基礎的字元出現索引
json_tuple從JSON輸入傳回Tuple
laglead傳回位移前的值
lastlast_value傳回最後一個值
left傳回前n個字元
length傳回字串的長度
levenshtein傳回字串之間的列文氏距離
locateposition傳回子字串第一次出現的位置
map_concat串連地圖
map_keys傳回對應的索引鍵
map_values傳回對應的值
ntile將資料列分割為資料分割
nullif若為true,則傳回null
nvl如果為null則傳回值
nvl2如果不為空,則傳回值
parse_url擷取部分URL
rank計算值的排名
regexp_extract擷取和規則運算式相符的內容
regex_replace取代符合regex的內容
repeat傳回重複的字串
replace取代字串的所有執行個體
rollup建立多維度統計
row_number指派唯一的列號
schema_of_json傳回JSON的結構描述
sentences將字串分割為字元陣列
sequence產生元素陣列
shiftleft帶正負號的位元左移
shiftright帶正負號的位元右移
shiftrightunsigned無正負號位元右移
size傳回陣列的大小
space傳回含有n個空格的字串
split分割字串
substring_index傳回子字串的索引
window視窗
xpath剖析XML節點
xpath_doublexpath_number剖析XML節點以取得雙精度浮點數
xpath_float剖析浮點數的XML節點
xpath_int剖析整數的XML節點
xpath_long長時間剖析XML節點
xpath_short剖析短整數的XML節點
xpath_string剖析字串的XML節點