Apache Presto - Funkcje SQL
Do tej pory omawialiśmy uruchamianie kilku prostych podstawowych zapytań w Presto. W tym rozdziale omówimy ważne funkcje SQL.
Funkcje matematyczne
Funkcje matematyczne działają na formułach matematycznych. Poniższa tabela szczegółowo opisuje listę funkcji.
| S.No. | Opis funkcji |
|---|---|
| 1. | abs (x) Zwraca wartość bezwzględną x |
| 2. | cbrt (x) Zwraca pierwiastek sześcienny z x |
| 3. | sufit (x) Zwraca x wartość zaokrąglona w górę do najbliższej liczby całkowitej |
| 4. | ceil(x) Alias dla sufitu (x) |
| 5. | stopnie (x) Zwraca wartość stopnia dla x |
| 6. | dawny) Zwraca podwójną wartość liczby Eulera |
| 7. | exp(x) Zwraca wartość wykładnika dla liczby Eulera |
| 8. | piętro (x) Zwroty x zaokrąglone w dół do najbliższej liczby całkowitej |
| 9. | from_base(string,radix) Zwraca wartość ciągu interpretowaną jako podstawową liczbę |
| 10. | ln(x) Zwraca logarytm naturalny z x |
| 11. | log2 (x) Zwraca logarytm o podstawie 2 z x |
| 12. | log10(x) Zwraca logarytm o podstawie 10 x |
| 13. | log(x,y) Zwraca podstawę y logarytm x |
| 14. | mod (rzecz., m.) Zwraca moduł (resztę) n podzielony przez m |
| 15. | pi() Zwraca wartość pi. Wynik zostanie zwrócony jako podwójna wartość |
| 16. | moc (x, p) Zwraca potęgę wartości ‘p’ do x wartość |
| 17. | pow(x,p) Alias władzy (x, p) |
| 18. | radiany (x) przekształca kąt x w radianach stopni |
| 19. | rand() Alias dla radianów () |
| 20. | losowy() Zwraca wartość pseudolosową |
| 21. | rand(n) Alias dla random () |
| 22. | okrągły (x) Zwraca zaokrągloną wartość x |
| 23. | round(x,d) x wartość zaokrąglona dla ‘d’ miejsca dziesiętne |
| 24. | sign(x) Zwraca funkcję signum x, tj. 0, jeśli argumentem jest 0 1, jeśli argument jest większy niż 0 -1, jeśli argument jest mniejszy niż 0 W przypadku argumentów podwójnych funkcja dodatkowo zwraca - NaN, jeśli argumentem jest NaN 1, jeśli argumentem jest + Nieskończoność -1, jeśli argumentem jest -Infinity |
| 25. | sqrt (x) Zwraca pierwiastek kwadratowy z x |
| 26. | to_base (x; podstawa) Typ zwrotu to łucznik. Wynik jest zwracany jako podstawa dlax |
| 27. | obcięcie (x) Obcina wartość dla x |
| 28. | width_bucket (x, bound1, bound2, n) Zwraca numer przedziału x określone granice bound1 i bound2 oraz n liczba segmentów |
| 29. | width_bucket (x, bins) Zwraca numer przedziału x zgodnie z przedziałami określonymi przez przedziały tablicy |
Funkcje trygonometryczne
Argumenty funkcji trygonometrycznych są przedstawiane jako radiany (). Poniższa tabela zawiera listę funkcji.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | acos (x) Zwraca odwrotną wartość cosinusa (x) |
| 2. | asin(x) Zwraca odwrotną wartość sinusa (x) |
| 3. | atan(x) Zwraca odwrotną wartość stycznej (x) |
| 4. | atan2 (y, x) Zwraca odwrotną wartość stycznej (y / x) |
| 5. | cos(x) Zwraca cosinus (x) |
| 6. | cosh (x) Zwraca hiperboliczną wartość cosinusa (x) |
| 7. | sin (x) Zwraca wartość sinusa (x) |
| 8. | tan(x) Zwraca wartość styczną (x) |
| 9. | tanh(x) Zwraca hiperboliczną wartość styczną (x) |
Funkcje bitowe
W poniższej tabeli wymieniono funkcje bitowe.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | bit_count (x, bity) Policz liczbę bitów |
| 2. | bitwise_and (x, y) Wykonaj operację bitową AND na dwóch bitach, x i y |
| 3. | bitwise_or (x, y) Operacja bitowa OR między dwoma bitami x, y |
| 4. | bitwise_not (x) Bitwise Not operacja dla bitu x |
| 5. | bitwise_xor (x, y) Operacja XOR dla bitów x, y |
Funkcje łańcuchowe
Poniższa tabela zawiera listę funkcji ciągów.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | concat (ciąg1, ..., ciągN) Połącz podane ciągi |
| 2. | długość (ciąg) Zwraca długość podanego ciągu |
| 3. | dolny (ciąg) Zwraca format małych liter dla ciągu |
| 4. | górny (ciąg) Zwraca format wielkich liter dla podanego ciągu |
| 5. | lpad (ciąg, rozmiar, wypełnienie) Lewe wypełnienie dla danego ciągu |
| 6. | ltrim (ciąg) Usuwa wiodące białe znaki z ciągu |
| 7. | replace (ciąg, szukaj, zamień) Zastępuje wartość ciągu |
| 8. | reverse (ciąg) Odwraca operację wykonaną dla ciągu |
| 9. | rpad (string, size, padstring) Prawe wypełnienie dla danego ciągu |
| 10. | rtrim (ciąg) Usuwa końcowe białe znaki z ciągu |
| 11. | split (ciąg, separator) Dzieli ciąg na separatorze i zwraca tablicę o maksymalnym rozmiarze |
| 12. | split_part (ciąg, separator, indeks) Dzieli ciąg na separatorze i zwraca indeks pola |
| 13. | strpos (ciąg, podciąg) Zwraca pozycję początkową podciągu w ciągu |
| 14. | substr (ciąg, początek) Zwraca podciąg dla podanego ciągu |
| 15. | substr (ciąg, początek, długość) Zwraca podciąg dla podanego ciągu o określonej długości |
| 16. | przycinanie (ciąg) Usuwa wiodący i końcowy biały znak z ciągu |
Funkcje daty i czasu
Poniższa tabela zawiera listę funkcji daty i godziny.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | bieżąca data Zwraca bieżącą datę |
| 2. | Obecny czas Zwraca aktualny czas |
| 3. | current_timestamp Zwraca bieżący znacznik czasu |
| 4. | current_timezone () Zwraca bieżącą strefę czasową |
| 5. | teraz() Zwraca bieżącą datę, sygnaturę czasową ze strefą czasową |
| 6. | czas lokalny Zwraca czas lokalny |
| 7. | localtimestamp Zwraca lokalny znacznik czasu |
Funkcje wyrażeń regularnych
W poniższej tabeli wymieniono funkcje wyrażeń regularnych.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | regexp_extract_all (ciąg, wzorzec) Zwraca ciąg dopasowany przez wyrażenie regularne dla wzorca |
| 2. | regexp_extract_all (ciąg, wzorzec, grupa) Zwraca ciąg dopasowany przez wyrażenie regularne dla wzorca i grupy |
| 3. | regexp_extract (ciąg, wzorzec) Zwraca pierwszy podciąg dopasowany przez wyrażenie regularne dla wzorca |
| 4. | regexp_extract (ciąg, wzorzec, grupa) Zwraca pierwszy podciąg dopasowany przez wyrażenie regularne dla wzorca i grupy |
| 5. | regexp_like (ciąg, wzorzec) Zwraca ciąg pasujący do wzorca. Jeśli zwracany jest ciąg, wartość będzie true, w przeciwnym razie false |
| 6. | regexp_replace (ciąg, wzorzec) Zastępuje wystąpienie ciągu dopasowanego do wyrażenia wzorcem |
| 7. | regexp_replace (ciąg, wzorzec, zamiana) Zastąp wystąpienie ciągu dopasowanego do wyrażenia wzorcem i zamiennikiem |
| 8. | regexp_split (ciąg, wzorzec) Dzieli wyrażenie regularne dla danego wzorca |
Funkcje JSON
W poniższej tabeli wymieniono funkcje JSON.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | json_array_contains (json, wartość) Sprawdź, czy wartość istnieje w tablicy JSON. Jeśli wartość istnieje, zwróci true, w przeciwnym razie false |
| 2. | json_array_get (json_array, indeks) Pobierz element dla indeksu w tablicy JSON |
| 3. | json_array_length (json) Zwraca długość w tablicy json |
| 4. | json_format (json) Zwraca format struktury JSON |
| 5. | json_parse (ciąg) Analizuje ciąg jako plik json |
| 6. | json_size (json, json_path) Zwraca rozmiar wartości |
Funkcje URL
Poniższa tabela zawiera listę funkcji adresów URL.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | url_extract_host (url) Zwraca hosta adresu URL |
| 2. | url_extract_path (adres URL) Zwraca ścieżkę adresu URL |
| 3. | url_extract_port (adres URL) Zwraca port adresu URL |
| 4. | url_extract_protocol (url) Zwraca protokół adresu URL |
| 5. | url_extract_query (url) Zwraca ciąg zapytania adresu URL |
Funkcje agregujące
W poniższej tabeli wymieniono funkcje agregujące.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | avg(x) Zwraca średnią dla podanej wartości |
| 2. | min (x, n) Zwraca minimalną wartość z dwóch wartości |
| 3. | max (x, n) Zwraca maksymalną wartość z dwóch wartości |
| 4. | suma (x) Zwraca sumę wartości |
| 5. | liczyć(*) Zwraca liczbę wierszy wejściowych |
| 6. | liczyć (x) Zwraca liczbę wartości wejściowych |
| 7. | suma kontrolna (x) Zwraca sumę kontrolną dla x |
| 8. | arbitralny (x) Zwraca dowolną wartość dla x |
Funkcje koloru
Poniższa tabela zawiera listę funkcji koloru.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | bar (x, szerokość) Renderuje pojedynczy pasek przy użyciu rgb low_color i high_color |
| 2. | bar (x, width, low_color, high_color) Renderuje pojedynczy pasek o określonej szerokości |
| 3. | kolor (ciąg) Zwraca wartość koloru dla wprowadzonego ciągu |
| 4. | render (x, kolor) Renderuje wartość x przy użyciu określonego koloru przy użyciu kodów kolorów ANSI |
| 5. | render (b) Akceptuje wartość logiczną b i renderuje zieloną prawdę lub czerwoną fałsz za pomocą kodów kolorów ANSI |
| 6. | rgb(red, green, blue) Zwraca wartość koloru przechwytującą wartość RGB trzech wartości kolorów składowych dostarczonych jako parametry int z zakresu od 0 do 255 |
Funkcje tablicowe
Poniższa tabela zawiera listę funkcji Array.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | tablica_max (x) Znajduje maksymalny element w tablicy |
| 2. | tablica_min (x) Znajduje element min w tablicy |
| 3. | array_sort (x) Sortuje elementy w tablicy |
| 4. | array_remove (x, element) Usuwa określony element z tablicy |
| 5. | concat (x, y) Łączy dwie tablice |
| 6. | zawiera (x, element) Znajduje podane elementy w tablicy. Prawda zostanie zwrócona, jeśli jest obecna, w przeciwnym razie false |
| 7. | array_position (x, element) Znajdź pozycję danego elementu w tablicy |
| 8. | array_intersect (x, y) Wykonuje przecięcie między dwiema tablicami |
| 9. | element_at (tablica, indeks) Zwraca pozycję elementu tablicy |
| 10. | plasterek (x, początek, długość) Tnie elementy tablicy o określonej długości |
Funkcje Teradata
Poniższa tabela zawiera listę funkcji Teradata.
| S.Nr | Funkcje i opis |
|---|---|
| 1. | indeks (ciąg, podciąg) Zwraca indeks ciągu z podanym podciągiem |
| 2. | substring (ciąg, początek) Zwraca podłańcuch podanego ciągu. Tutaj możesz określić indeks początkowy |
| 3. | podciąg (ciąg, początek, długość) Zwraca podłańcuch podanego ciągu dla określonego indeksu początkowego i długości ciągu |