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 |