Apache Presto - SQL İşlevleri
Şu an itibariyle Presto'da bazı basit temel sorgular çalıştırmayı tartışıyorduk. Bu bölümde önemli SQL işlevleri tartışılacaktır.
Matematik Fonksiyonları
Matematik fonksiyonları matematiksel formüllerle çalışır. Aşağıdaki tablo, işlevlerin listesini ayrıntılı olarak açıklamaktadır.
S.No. | İşlev ve Açıklama |
---|---|
1. | abs (x) Mutlak değerini verir x |
2. | cbrt (x) Küp kökünü verir x |
3. | tavan (x) Döndürür x en yakın tam sayıya yuvarlanan değer |
4. | ceil(x) Tavan takma adı (x) |
5. | derece (x) Derece değerini verir x |
6. | e (x) Euler sayısının çift değerini verir |
7. | exp(x) Euler sayısının üs değerini verir |
8. | kat (x) İadeler x en yakın tam sayıya yuvarlanır |
9. | from_base(string,radix) Taban taban sayısı olarak yorumlanan dizenin değerini verir |
10. | ln(x) Doğal logaritmasını verir x |
11. | log2 (x) 2 tabanındaki logaritmayı verir x |
12. | log10(x) 10 tabanındaki logaritmayı verir x |
13. | log(x,y) Tabanı verir y logaritması x |
14. | mod (n, m) Modülünü (kalan) verir n bölü m |
15. | pi() Pi değerini döndürür. Sonuç çift değer olarak döndürülecek |
16. | güç (x, p) Değerin gücünü verir ‘p’ için x değer |
17. | pow(x,p) Güç takma adı (x, p) |
18. | radyan (x) açıyı dönüştürür x derece radyan cinsinden |
19. | rand() Radyan takma adı () |
20. | rastgele () Sözde rastgele değeri verir |
21. | rand(n) Random () için takma ad |
22. | yuvarlak (x) X için yuvarlanmış değeri verir |
23. | round(x,d) x için yuvarlanan değer ‘d’ ondalık |
24. | sign(x) X'in işaret işlevini verir, yani, Bağımsız değişken 0 ise 0 Bağımsız değişken 0'dan büyükse 1 Bağımsız değişken 0'dan küçükse -1 Çift bağımsız değişkenler için işlev ayrıca şunu döndürür - NaN, eğer argüman NaN ise 1 eğer argüman + Infinity ise Bağımsız değişken -Infinity ise -1 |
25. | sqrt (x) Karekökünü verir x |
26. | to_base (x, radix) Dönüş türü okçudur. Sonuç, temel radix olarak döndürülürx |
27. | kesik (x) Değerini kısaltır x |
28. | width_bucket (x, bound1, bound2, n) Bin sayısını verir x belirtilen bound1 ve bound2 sınırları ve n sayıda paket |
29. | width_bucket (x, bölmeler) Bin sayısını verir x dizi bölmeleri tarafından belirtilen bölmelere göre |
Trigonometrik fonksiyonlar
Trigonometrik fonksiyonlar argümanları radyan () olarak temsil edilir. Aşağıdaki tablo işlevleri listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | acos (x) Ters kosinüs değerini (x) verir |
2. | asin(x) Ters sinüs değerini (x) verir |
3. | atan(x) Ters tanjant değerini (x) verir |
4. | atan2 (y, x) Ters tanjant değerini verir (y / x) |
5. | cos(x) Kosinüs değerini (x) verir |
6. | cosh (x) Hiperbolik kosinüs değerini (x) verir |
7. | günah (x) Sinüs değerini (x) verir |
8. | tan(x) Teğet değeri (x) verir |
9. | tanh(x) Hiperbolik tanjant değerini (x) verir |
Bitsel İşlevler
Aşağıdaki tablo Bitwise işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | bit_count (x, bit) Bit sayısını sayın |
2. | bitsel_ve (x, y) İki bit için bitsel AND işlemini gerçekleştirin, x ve y |
3. | bitwise_or (x, y) İki bit arasında bit tabanlı VEYA işlemi x, y |
4. | bitwise_not (x) Bit için Bitsel Değil işlemi x |
5. | bitwise_xor (x, y) Bitler için XOR işlemi x, y |
String Fonksiyonları
Aşağıdaki tablo String işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | concat (dize1, ..., dizeN) Verilen dizeleri birleştirin |
2. | uzunluk (dize) Verilen dizenin uzunluğunu verir |
3. | alt (dize) Dize için küçük harf biçimini verir |
4. | üst (dize) Verilen dizge için büyük harf biçimini döndürür |
5. | lpad (string, size, padstring) Verilen dize için sol dolgu |
6. | ltrim (dize) Dizeden baştaki beyaz boşluğu kaldırır |
7. | değiştir (dize, ara, değiştir) Dize değerini değiştirir |
8. | ters (dize) Dizi için gerçekleştirilen işlemi tersine çevirir |
9. | rpad (dize, boyut, padstring) Verilen dize için sağ dolgu |
10. | rtrim (dize) Sondaki beyaz boşluğu dizeden kaldırır |
11. | bölme (dize, sınırlayıcı) Sınırlayıcıdaki dizeyi böler ve en sınırda bir boyut dizisi döndürür |
12. | split_part (dize, sınırlayıcı, dizin) Sınırlayıcıdaki dizeyi böler ve alan dizinini döndürür |
13. | strpos (dize, alt dize) Dizedeki alt dizenin başlangıç konumunu verir |
14. | substr (dize, başlangıç) Verilen dizenin alt dizesini döndürür |
15. | substr (dize, başlangıç, uzunluk) Belirli uzunluktaki belirli bir dizenin alt dizesini döndürür |
16. | trim (dize) Dizeden baştaki ve sondaki beyaz boşluğu kaldırır |
Tarih ve Saat İşlevleri
Aşağıdaki tablo Tarih ve Saat işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | Geçerli tarih Geçerli tarihi verir |
2. | şimdiki zaman Geçerli saati verir |
3. | Geçerli zaman dalgası Geçerli zaman damgasını verir |
4. | current_timezone () Mevcut saat dilimini verir |
5. | şimdi () Saat dilimiyle birlikte geçerli tarihi, zaman damgasını verir |
6. | Yerel zaman Yerel saati verir |
7. | localtimestamp Yerel zaman damgasını verir |
Normal İfade İşlevleri
Aşağıdaki tablo Normal İfade işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | regexp_extract_all (dize, kalıp) Kalıp için normal ifade ile eşleşen dizeyi verir |
2. | regexp_extract_all (dize, kalıp, grup) Kalıp ve grup için normal ifadeyle eşleşen dizeyi verir |
3. | regexp_extract (dize, desen) Desen için normal ifadeyle eşleşen ilk alt dizeyi verir |
4. | regexp_extract (dize, desen, grup) Kalıp ve grup için normal ifadeyle eşleşen ilk alt dizeyi verir |
5. | regexp_like (dize, kalıp) Kalıp için dize eşleşmelerini döndürür. Dize döndürülürse, değer doğru olacaktır, aksi takdirde yanlış |
6. | regexp_replace (dize, desen) İfade için eşleşen dizenin örneğini desenle değiştirir |
7. | regexp_replace (dize, kalıp, değiştirme) İfade için eşleşen dizenin örneğini desen ve değiştirme ile değiştirin |
8. | regexp_split (dize, kalıp) Verilen desen için normal ifadeyi böler |
JSON İşlevleri
Aşağıdaki tablo JSON işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | json_array_contains (json, değer) Değerin bir json dizisinde olup olmadığını kontrol edin. Değer mevcutsa true, aksi takdirde false döndürür |
2. | json_array_get (json_array, dizin) Json dizisinde dizin için öğeyi alın |
3. | json_array_length (json) Json dizisindeki uzunluğu verir |
4. | json_format (json) Json yapı biçimini döndürür |
5. | json_parse (dize) Dizeyi json olarak ayrıştırır |
6. | json_size (json, json_path) Değerin boyutunu verir |
URL İşlevleri
Aşağıdaki tablo, URL işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | url_extract_host (url) URL'nin barındırıcısını döndürür |
2. | url_extract_path (url) URL'nin yolunu verir |
3. | url_extract_port (url) URL'nin bağlantı noktasını döndürür |
4. | url_extract_protocol (url) URL'nin protokolünü döndürür |
5. | url_extract_query (url) URL'nin sorgu dizesini döndürür |
Toplama İşlevleri
Aşağıdaki tablo, Toplama işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | avg(x) Verilen değer için ortalamayı verir |
2. | min (x, n) İki değerden minimum değeri verir |
3. | maks (x, n) İki değerden maksimum değeri verir |
4. | toplam (x) Değerin toplamını verir |
5. | Miktar(*) Giriş satırlarının sayısını verir |
6. | sayım (x) Giriş değerlerinin sayısını verir |
7. | sağlama toplamı (x) Sağlama toplamını verir x |
8. | keyfi (x) İçin rasgele değeri verir x |
Renk Fonksiyonları
Aşağıdaki tablo Renk işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | çubuk (x, genişlik) Rgb low_color ve high_color kullanarak tek bir çubuk oluşturur |
2. | çubuk (x, genişlik, düşük_renk, yüksek_renk) Belirtilen genişlik için tek bir çubuk oluşturur |
3. | renk (dizi) Girilen dizenin renk değerini verir |
4. | render (x, renk) ANSI renk kodlarını kullanarak belirli bir rengi kullanarak x değerini oluşturur |
5. | render (b) Boole değeri b'yi kabul eder ve ANSI renk kodlarını kullanarak yeşili doğru veya kırmızıyı yanlış hale getirir |
6. | rgb(red, green, blue) 0-255 arasında int parametreleri olarak sağlanan üç bileşen renk değerinin RGB değerini yakalayan bir renk değeri döndürür |
Dizi İşlevleri
Aşağıdaki tablo Dizi işlevlerini listeler.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | dizi_max (x) Bir dizideki maksimum elemanı bulur |
2. | dizi_min (x) Bir dizideki min elemanını bulur |
3. | dizi_sırası (x) Bir dizideki öğeleri sıralar |
4. | array_remove (x, eleman) Belirli bir öğeyi bir diziden kaldırır |
5. | concat (x, y) İki diziyi birleştirir |
6. | içerir (x, eleman) Bir dizide verilen elemanları bulur. Varsa true döndürülür, aksi takdirde false |
7. | dizi_konumu (x, eleman) Verilen elemanın bir dizideki konumunu bulun |
8. | array_intersect (x, y) İki dizi arasında bir kesişim gerçekleştirir |
9. | element_at (dizi, dizin) Dizi öğesi konumunu verir |
10. | dilim (x, başlangıç, uzunluk) Dizi öğelerini belirli uzunlukta dilimler |
Teradata İşlevleri
Aşağıdaki tablo Teradata işlevlerini listelemektedir.
S.No | Fonksiyonlar ve Açıklama |
---|---|
1. | dizin (dize, alt dize) Verilen alt dizeyle dizenin dizinini verir |
2. | alt dize (dize, başlangıç) Verilen dizenin alt dizesini döndürür. Başlangıç dizinini burada belirtebilirsiniz |
3. | alt dize (dize, başlangıç, uzunluk) Dizenin belirli başlangıç dizini ve uzunluğu için verilen dizenin alt dizesini döndürür |