Apache Presto-SQL 함수
지금까지 Presto에서 몇 가지 간단한 기본 쿼리를 실행하는 것에 대해 논의하고있었습니다. 이 장에서는 중요한 SQL 함수에 대해 설명합니다.
수학 함수
수학 함수는 수학 공식에서 작동합니다. 다음 표는 기능 목록을 자세히 설명합니다.
S. 아니. | 기능 및 설명 |
---|---|
1. | abs (x) 절대 값을 반환합니다. x |
2. | cbrt (x) 의 세제곱근을 반환합니다. x |
삼. | 천장 (x) 반환 x 가장 가까운 정수로 반올림 된 값 |
4. | ceil(x) Ceiling (x)의 별칭 |
5. | 도 (x) 다음에 대한 정도 값을 반환합니다. x |
6. | 전의) 오일러 수에 대한 double 값을 반환합니다. |
7. | exp(x) 오일러 수에 대한 지수 값을 반환합니다. |
8. | 층 (x) 보고 x 가장 가까운 정수로 내림 |
9. | from_base(string,radix) 기본 기수로 해석 된 문자열 값을 반환합니다. |
10. | ln(x) 자연 로그를 반환합니다. x |
11. | log2 (x) 밑이 2 인 로그를 반환합니다. x |
12. | log10(x) 밑이 10 인 로그를 반환합니다. x |
13. | log(x,y) 베이스를 반환합니다. y 대수 x |
14. | mod (n, m) 모듈러스 (나머지)를 반환합니다. n 로 나눈 m |
15. | pi() 파이 값을 반환합니다. 결과는 이중 값으로 반환됩니다. |
16. | 힘 (x, p) 가치의 거듭 제곱을 반환합니다. ‘p’ ~로 x 값 |
17. | pow(x,p) power (x, p)에 대한 별칭 |
18. | 라디안 (x) 각도를 변환 x 라디안 단위 |
19. | rand() 라디안 ()에 대한 별칭 |
20. | 랜덤 () 의사 난수 값을 반환합니다. |
21. | rand(n) random ()에 대한 별칭 |
22. | 원형 (x) x에 대해 반올림 된 값을 반환합니다. |
23. | round(x,d) x 반올림 된 값 ‘d’ 소수점 이하 자릿수 |
24. | sign(x) x의 signum 함수를 반환합니다. 인수가 0이면 0 인수가 0보다 큰 경우 1 인수가 0보다 작은 경우 -1 이중 인수의 경우 함수는 추가로- 인수가 NaN 인 경우 NaN 인수가 + Infinity 인 경우 1 인수가 -Infinity 인 경우 -1 |
25. | sqrt (x) 제곱근을 반환합니다. x |
26. | to_base (x, radix) 반환 유형은 궁수입니다. 결과는 다음에 대한 기본 기수로 리턴됩니다.x |
27. | 자르기 (x) 값을 자릅니다. x |
28. | width_bucket (x, bound1, bound2, n) 빈 수를 반환합니다. x 지정된 bound1 및 bound2 경계 및 n 개의 버킷 |
29. | width_bucket (x, bins) 빈 수를 반환합니다. x 배열 빈으로 지정된 빈에 따라 |
삼각 함수
삼각 함수 인수는 radians ()로 표시됩니다. 다음 표는 기능을 나열합니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | acos (x) 역 코사인 값 (x)을 반환합니다. |
2. | asin(x) 역 사인 값 (x)을 반환합니다. |
삼. | atan(x) 역 탄젠트 값 (x)을 반환합니다. |
4. | atan2 (y, x) 역 탄젠트 값 (y / x)을 반환합니다. |
5. | cos(x) 코사인 값 (x)을 반환합니다. |
6. | 코시 (x) 쌍곡 코사인 값 (x)을 반환합니다. |
7. | sin (x) 사인 값 (x)을 반환합니다. |
8. | tan(x) 탄젠트 값 (x)을 반환합니다. |
9. | tanh(x) 쌍곡 탄젠트 값 (x)을 반환합니다. |
비트 함수
다음 표에는 Bitwise 함수가 나열되어 있습니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | bit_count (x, 비트) 비트 수 계산 |
2. | 비트 별 _and (x, y) 2 비트에 대해 비트 AND 연산을 수행합니다. x 과 y |
삼. | 비트 단위 _ 또는 (x, y) 두 비트 간의 비트 OR 연산 x, y |
4. | bitwise_not (x) 비트에 대한 비트 Not 연산 x |
5. | 비트 xor (x, y) 비트에 대한 XOR 연산 x, y |
문자열 함수
다음 표는 문자열 함수를 나열합니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | concat (문자열 1, ..., 문자열 N) 주어진 문자열을 연결 |
2. | 길이 (문자열) 주어진 문자열의 길이를 반환 |
삼. | 낮은 (문자열) 문자열의 소문자 형식을 반환합니다. |
4. | 대문자 (문자열) 주어진 문자열의 대문자 형식을 반환합니다. |
5. | lpad (문자열, 크기, 패드 문자열) 주어진 문자열에 대한 왼쪽 패딩 |
6. | ltrim (문자열) 문자열에서 선행 공백을 제거합니다. |
7. | 바꾸기 (문자열, 검색, 바꾸기) 문자열 값을 대체합니다. |
8. | reverse (문자열) 문자열에 대해 수행 된 작업을 되돌립니다. |
9. | rpad (문자열, 크기, 패드 문자열) 주어진 문자열에 대한 오른쪽 패딩 |
10. | rtrim (문자열) 문자열에서 후행 공백을 제거합니다. |
11. | split (문자열, 구분 기호) 구분 기호에서 문자열을 분할하고 최대 제한 크기의 배열을 반환합니다. |
12. | split_part (문자열, 구분 기호, 색인) 구분 기호에서 문자열을 분할하고 필드 인덱스를 반환합니다. |
13. | strpos (문자열, 부분 문자열) 문자열에서 하위 문자열의 시작 위치를 반환합니다. |
14. | substr (문자열, 시작) 주어진 문자열에 대한 부분 문자열을 반환합니다. |
15. | substr (문자열, 시작, 길이) 특정 길이의 주어진 문자열에 대한 부분 문자열을 반환합니다. |
16. | trim (문자열) 문자열에서 선행 및 후행 공백을 제거합니다. |
날짜 및 시간 기능
다음 표는 날짜 및 시간 기능을 나열합니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | 현재 _ 날짜 현재 날짜를 반환합니다. |
2. | 현재 시간 현재 시간을 반환합니다. |
삼. | current_timestamp 현재 타임 스탬프를 반환합니다. |
4. | current_timezone () 현재 시간대를 반환합니다. |
5. | 지금() 현재 날짜, 타임 스탬프를 시간대와 함께 반환합니다. |
6. | 현지 시각 현지 시간을 반환합니다. |
7. | localtimestamp 로컬 타임 스탬프를 반환합니다. |
정규식 함수
다음 표는 정규식 함수를 나열합니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | regexp_extract_all (문자열, 패턴) 패턴의 정규식과 일치하는 문자열을 반환합니다. |
2. | regexp_extract_all (문자열, 패턴, 그룹) 패턴 및 그룹에 대한 정규식과 일치하는 문자열을 반환합니다. |
삼. | regexp_extract (문자열, 패턴) 패턴의 정규식과 일치하는 첫 번째 부분 문자열을 반환합니다. |
4. | regexp_extract (문자열, 패턴, 그룹) 패턴 및 그룹에 대한 정규식과 일치하는 첫 번째 하위 문자열을 반환합니다. |
5. | regexp_like (문자열, 패턴) 패턴과 일치하는 문자열을 반환합니다. 문자열이 반환되면 값은 true가되고 그렇지 않으면 false가됩니다. |
6. | regexp_replace (문자열, 패턴) 표현식과 일치하는 문자열의 인스턴스를 패턴으로 바꿉니다. |
7. | regexp_replace (문자열, 패턴, 교체) 표현식과 일치하는 문자열의 인스턴스를 패턴 및 대체로 바꿉니다. |
8. | regexp_split (문자열, 패턴) 주어진 패턴에 대한 정규식을 분할합니다. |
JSON 함수
다음 표에는 JSON 함수가 나열되어 있습니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | json_array_contains (json, 값) 값이 json 배열에 있는지 확인하십시오. 값이 존재하면 true를 반환하고 그렇지 않으면 false를 반환합니다. |
2. | json_array_get (json_array, 인덱스) json 배열의 인덱스 요소 가져 오기 |
삼. | json_array_length (json) json 배열의 길이를 반환합니다. |
4. | json_format (json) json 구조 형식을 반환합니다. |
5. | json_parse (문자열) 문자열을 json으로 구문 분석합니다. |
6. | json_size (json, json_path) 값의 크기를 반환합니다. |
URL 기능
다음 표는 URL 기능을 나열합니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | url_extract_host (URL) URL의 호스트를 반환합니다. |
2. | url_extract_path (URL) URL의 경로를 반환 |
삼. | url_extract_port (URL) URL의 포트를 반환합니다. |
4. | url_extract_protocol (url) URL의 프로토콜을 반환합니다. |
5. | url_extract_query (URL) URL의 쿼리 문자열을 반환합니다. |
집계 함수
다음 표에는 집계 함수가 나열되어 있습니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | avg(x) 주어진 값에 대한 평균을 반환합니다. |
2. | 최소 (x, n) 두 값에서 최소값을 반환합니다. |
삼. | 최대 (x, n) 두 값에서 최대 값을 반환합니다. |
4. | 합계 (x) 값의 합계를 반환합니다. |
5. | 카운트(*) 입력 행 수를 반환합니다. |
6. | 카운트 (x) 입력 값의 개수를 반환합니다. |
7. | 체크섬 (x) 체크섬을 반환합니다. x |
8. | 임의 (x) 임의의 값을 반환합니다. x |
색상 기능
다음 표는 색상 기능을 나열합니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | bar (x, 너비) rgb low_color 및 high_color를 사용하여 단일 막대를 렌더링합니다. |
2. | 막대 (x, 너비, 낮은 색상, 높은 색상) 지정된 너비에 대한 단일 막대를 렌더링합니다. |
삼. | 색상 (문자열) 입력 한 문자열의 색상 값을 반환합니다. |
4. | render (x, color) ANSI 색상 코드를 사용하여 특정 색상을 사용하여 값 x를 렌더링합니다. |
5. | 세우다 (b) 부울 값 b를 허용하고 ANSI 색상 코드를 사용하여 녹색 true 또는 빨간색 false를 렌더링합니다. |
6. | rgb(red, green, blue) 0에서 255 사이의 int 매개 변수로 제공된 세 가지 구성 요소 색상 값의 RGB 값을 캡처하는 색상 값을 리턴합니다. |
배열 함수
다음 표는 배열 함수를 나열합니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | 배열 _ 최대 (x) 배열에서 최대 요소를 찾습니다. |
2. | 배열 _ 분 (x) 배열에서 최소 요소를 찾습니다. |
삼. | 배열 _ 정렬 (x) 배열의 요소를 정렬합니다. |
4. | array_remove (x, 요소) 배열에서 특정 요소를 제거합니다. |
5. | concat (x, y) 두 배열을 연결합니다. |
6. | contains (x, element) 배열에서 주어진 요소를 찾습니다. 존재하면 True, 그렇지 않으면 false가 반환됩니다. |
7. | 배열 _ 위치 (x, 요소) 배열에서 주어진 요소의 위치 찾기 |
8. | array_intersect (x, y) 두 배열 간의 교차를 수행합니다. |
9. | element_at (배열, 색인) 배열 요소 위치를 반환합니다. |
10. | 슬라이스 (x, 시작, 길이) 특정 길이로 배열 요소를 슬라이스합니다. |
Teradata 함수
다음 표에는 Teradata 함수가 나열되어 있습니다.
S. 아니 | 기능 및 설명 |
---|---|
1. | index (문자열, 부분 문자열) 주어진 부분 문자열이있는 문자열의 인덱스를 반환합니다. |
2. | 부분 문자열 (문자열, 시작) 주어진 문자열의 부분 문자열을 반환합니다. 여기에서 시작 색인을 지정할 수 있습니다. |
삼. | 부분 문자열 (문자열, 시작, 길이) 특정 시작 인덱스 및 문자열 길이에 대해 지정된 문자열의 하위 문자열을 반환합니다. |