Hive - Yerleşik İşlevler

Bu bölüm, Hive'da bulunan yerleşik işlevleri açıklamaktadır. İşlevler, kullanımları dışında SQL işlevlerine oldukça benzer.

Yerleşik İşlevler

Hive, aşağıdaki yerleşik işlevleri destekler:

Dönüş Tipi İmza Açıklama
BÜYÜK yuvarlak (çift a) Çiftin yuvarlanmış BÜYÜK değerini döndürür.
BÜYÜK kat (çift a) Çifte eşit veya daha küçük olan maksimum BÜYÜK değeri döndürür.
BÜYÜK tavan (çift a) İkiye eşit veya daha büyük olan minimum BÜYÜK değeri döndürür.
çift rand (), rand (int tohum) Satırdan satıra değişen rastgele bir sayı döndürür.
dizi concat (string A, string B, ...) A'dan sonra B'nin birleştirilmesinden kaynaklanan dizeyi döndürür.
dizi substr (dizge A, int başlangıç) Başlangıç ​​konumundan başlayarak A dizesinin sonuna kadar A'nın alt dizesini döndürür.
dizi substr (string A, int start, int length) Verilen uzunlukta başlangıç ​​konumundan başlayarak A'nın alt dizesini döndürür.
dizi üst (dizi A) A'nın tüm karakterlerinin büyük harfe dönüştürülmesinden kaynaklanan dizeyi döndürür.
dizi ucase (A dizisi) Yukarıdaki gibi.
dizi daha düşük (string A) Tüm B karakterlerinin küçük harfe dönüştürülmesinden kaynaklanan dizeyi döndürür.
dizi lcase (A dizisi) Yukarıdaki gibi.
dizi trim (dizi A) A'nın her iki ucundaki boşlukların kırpılmasından kaynaklanan dizeyi döndürür.
dizi ltrim (A dizisi) A'nın başındaki (sol taraf) boşlukların kırpılmasından kaynaklanan dizeyi döndürür.
dizi rtrim (A dizisi) rtrim (string A) A'nın sonundan (sağ taraf) boşlukların kırpılmasından kaynaklanan dizgeyi döndürür.
dizi regexp_replace (dizge A, dizge B, dizge C) Java normal ifade sözdizimiyle C ile eşleşen B'deki tüm alt dizelerin değiştirilmesinden kaynaklanan dizeyi döndürür.
int boyut (Harita <KV>) Harita türündeki öğelerin sayısını döndürür.
int boyut (Dizi <T>) Dizi tipindeki elemanların sayısını döndürür.
<type> değeri cast (<expr> <type> olarak) İfade ifadesinin sonuçlarını <tür> 'e dönüştürür, örn. Cast (BIGINT olarak' 1 ')' 1 'dizesini integral gösterime dönüştürür. Dönüşüm başarılı olmazsa bir NULL döndürülür.
dizi from_unixtime (int unixtime) Unix döneminden (1970-01-01 00:00:00 UTC) saniye sayısını geçerli sistem saat diliminde o anın zaman damgasını "1970-01-01 00:00 biçiminde temsil eden bir dizeye dönüştür: 00 "
dizi to_date (dize zaman damgası) Bir zaman damgası dizesinin tarih bölümünü döndürür: to_date ("1970-01-01 00:00:00") = "1970-01-01"
int yıl (dize tarihi) Bir tarihin veya zaman damgası dizesinin yıl bölümünü döndürür: year ("1970-01-01 00:00:00") = 1970, year ("1970-01-01") = 1970
int ay (dize tarihi) Bir tarihin veya zaman damgası dizesinin ay bölümünü döndürür: month ("1970-11-01 00:00:00") = 11, month ("1970-11-01") = 11
int gün (dize tarihi) Bir tarihin veya zaman damgası dizesinin gün bölümünü döndürür: gün ("1970-11-01 00:00:00") = 1, gün ("1970-11-01") = 1
dizi get_json_object (dize json_string, dize yolu) Belirtilen json yolunu temel alan bir json dizesinden json nesnesini çıkarır ve çıkarılan json nesnesinin json dizesini döndürür. Girdi json dizesi geçersizse NULL döndürür.

Misal

Aşağıdaki sorgular bazı yerleşik işlevleri gösterir:

round () işlevi

hive> SELECT round(2.6) from temp;

Sorgunun başarılı bir şekilde yürütülmesi üzerine aşağıdaki yanıtı görürsünüz:

3.0

floor () işlevi

hive> SELECT floor(2.6) from temp;

Sorgunun başarıyla yürütülmesi üzerine aşağıdaki yanıtı görürsünüz:

2.0

ceil () işlevi

hive> SELECT ceil(2.6) from temp;

Sorgunun başarıyla yürütülmesi üzerine aşağıdaki yanıtı görürsünüz:

3.0

Toplama İşlevleri

Hive, aşağıdaki yerleşik özellikleri destekler aggregate functions. Bu işlevlerin kullanımı SQL toplama işlevleriyle aynıdır.

Dönüş Tipi İmza Açıklama
BÜYÜK say (*), say (ifade), count (*) - Alınan toplam satır sayısını döndürür.
ÇİFT toplam (sütun), toplam (DISTINCT sütun) Gruptaki öğelerin toplamını veya gruptaki sütunun farklı değerlerinin toplamını döndürür.
ÇİFT ort (sütun), ort (DISTINCT sütun) Gruptaki öğelerin ortalamasını veya gruptaki sütunun farklı değerlerinin ortalamasını döndürür.
ÇİFT min (sütun) Gruptaki sütunun minimum değerini döndürür.
ÇİFT max (sütun) Gruptaki sütunun maksimum değerini döndürür.