함수

Tibero에서 제공하는 내장 함수에 대해 기술합니다.

개요

Tibero에서는 다양한 내장 함수를 제공하고 있습니다. 이러한 함수 중의 일부는 SQL 표준에 정의되어 있으며, 일부는 Tibero에서 추가적으로 제공하는 것입니다. Tibero의 함수는 크게 단일 로우 함수와 집단 함수로 구 분할 수 있습니다.

일부 함수는 파라미터가 없는 것도 있지만, 대부분의 함수는 하나 이상의 파라미터를 입력으로 받는다. 또 한 모든 함수는 하나의 출력 값을 반환합니다. 각 파라미터는 데이터 타입이 정해져 있습니다. 정해진 데이터 타 입 이외의 다른 타입의 값이 입력된 경우에는 “연산식의 변환”에서 설명한 대로 데이터 타입의 변환 을 시도합니다. 데이터 타입의 변환이 불가능한 경우에는 에러를 반환합니다. 또한, 범위를 넘는 값을 컬럼에 저장할 때에도 에러를 반환합니다.

대부분의 함수는 파라미터 값으로 NULL이 입력된 경우 NULL을 반환합니다. NULL이 입력된 경우에도 NULL을 반환하지 않는 함수로는 CONCAT, NVL, REPLACE 등이 있습니다. 함수의 반환값을 컬럼에 저장할 때에는 반환값의 범위에 유의해야 합니다.

  • 함수의 반환값이 NUMBER 타입인 경우 컬럼의 정밀도와 스케일 범위 내의 값이어야 합니다.

  • 함수의 반환값이 CHAR 타입인 경우 컬럼의 최대 길이 범위 내의 값이어야 합니다.

  • 함수의 반환값이 VARCHAR 타입인 경우 컬럼의 최대 길이 범위 내의 값이어야 합니다.

단일 로우 함수

단일 로우 함수는 하나의 로우로부터 컬럼 값을 파라미터로 입력 받는 함수입니다. 함수의 파라미터는 반드 시 컬럼 값만 입력받는 것은 아니고 실제 데이터를 직접 입력으로 받을 수도 있습니다. 단일 로우 함수는 SQL 문장 내의 어떤 연산식에도 포함될 수 있습니다.

집단 함수

집단 함수는 하나 이상의 로우로부터 컬럼 값을 파라미터로 입력받는 함수입니다. 함수의 파라미터는 반드 시 컬럼 값만 입력받는 것은 아니고 실제 데이터를 직접 입력으로 받을 수도 있습니다. 집단 함수는 SELECT 문의 SELECT 절, GROUP BY 절, HAVING 절에만 포함됩니다.

Tibero에서 제공하는 집단 함수에는 AVG, COUNT, MAX, MIN, SUM 등이 있습니다. 이러한 함수는 각각 파라 미터로 주어진 컬럼에 대하여 평균, 개수, 최댓값, 최솟값, 합계 등을 구합니다. 만약 파라미터로 실제 데이 터 값이 주어지면 그 값을 그대로 반환합니다.

SELECT 절

SELECT 문에서 SELECT 절의 집단 함수는 중첩될 수 있습니다. 단, 다른 위치의 집단 함수는 중첩되면 안 된 다. 또한, SELECT 절의 집단 함수도 한 번의 중첩만을 허용합니다.

따라서, 다음과 같은 집단 함수는 에러를 반환합니다.

중첩된 집단 함수의 계산은 먼저 각 그룹에 대한 안쪽의 집단 함수를 계산하고, 여기에서 반환된 모든 값 에 대하여 바깥쪽의 집단 함수를 계산합니다. 예를 들어 SUM(AVG(SAL)) 함수는 모든 그룹으로부터 SAL 컬럼 값의 평균을 구하고, 그다음 모든 평균값의 합계를 구하여 반환합니다.

집단 함수의 괄호 내에는 조건식이 아닌 임의의 연산식이 올 수 있습니다. SELECT 문에서 SELECT 절의 집단 함수는 다른 집단 함수를 포함하는 연산식이 올 수도 있습니다.

따라서, 다음과 같은 집단 함수도 유효합니다.

COUNT 함수는 괄호 안에 애스터리스크(*)가 올 수도 있습니다. 이 경우 특정 컬럼이 아닌 전체 로우의 개수를 반환합니다.

로우를 하나도 포함하지 않는 빈 테이블에 대해 집단 함수를 포함하는 SELECT 문을 실행하면, 결과 로우 가 하나도 반환되지 않습니다. 예외적으로, SELECT 절에 COUNT(*) 함수를 포함하면 0 값의 컬럼을 갖는 하나의 로우가 반환됩니다.

GROUP BY 절

집단 함수는 대개 SELECT 문 내에서 GROUP BY 절과 함께 사용합니다. 집단 함수는 GROUP BY 절에 의 하여 분리된 각 그룹에 포함된 모든 로우에 대하여 하나의 값을 반환합니다. 만약 SELECT 문에서 GROUP BY 절을 포함하지 않으면, 전체 테이블을 하나의 그룹으로 인식합니다.

다음의 SELECT 문은 GROUP BY 절을 포함한 예입니다.

위의 문장은 테이블 EMP 내의 모든 로우 중에서 같은 DEPTNO 컬럼 값을 갖는 로우의 그룹으로 분리하 고, 각 그룹에 포함된 모든 직원의 SAL 컬럼 값의 평균을 계산합니다.

HAVING절

SELECT 문에서 HAVING 절은 그룹에 대한 조건식을 포함합니다. HAVING 절은 SELECT 절이나 GROUP BY 절에 포함된 컬럼 또는 그 이외의 컬럼에 대한 집단 함수를 포함할 수 있습니다.

다음의 SELECT 문은 HAVING 절을 포함한 예입니다. 본 예제에서는 3명 이상의 직원이 소속된 부서에 대 해서만 SAL 컬럼 값의 평균을 계산합니다.

집단 함수의 파라미터 앞에는 DISTINCT 또는 ALL 예약어를 포함시킬 수 있습니다. 이러한 예약어는 중복되 는 컬럼 값에 대한 처리를 정의하며, DISTINCT는 중복을 제거하고, ALL은 중복을 허용합니다.

예를 들어 한 그룹 내의 로우가 갖고 있는 SAL 컬럼 값이 20000, 20000, 20000, 40000이라면, AVG(DISTINCT SAL) 함수의 결과는 30000이며, AVG(ALL SAL) 함수의 결과는 25000입니다. 만약 아무 것도 지정하지 않으면 디폴트는 ALL입니다.

다음의 표는 Tibero에서 제공하는 집단 함수 목록입니다.

집단 함수
설명

AVG

그룹 내의 모든 로우에 대한 expr 값의 평균을 구하는 함수

CORR

파라미터로 주어진 expr1가 expr2의 상관계수를 계산하는 함수

COUNT

쿼리가 반환하는 로우의 개수를 세는 함수

COVAR_POP

expr1, expr2의 모공분산을 계산하는 함

COVAR_SAMP

expr1, expr2의 표본공분산을 계산하는 함수수

DENSE_RANK

각 그룹별로 로우를 정렬한 다음 그룹 내의 각 로우에 대한 순위를 반환하는 함수

FIRST

정렬된 로우에서 처음에 해당하는 로우를 뽑아내어 명시된 집단함수를 적용 한 결과를 반환

LAST

정렬된 로우에서 마지막에 해당하는 로우를 뽑아내어 명시된 집단함수를 적 용한 결과를 반환

MAX

그룹 내의 모든 로우에 대한 expr 값 중의 최댓값을 구하는 함수

MIN

그룹 내의 모든 로우에 대한 expr 값 중의 최솟값을 구하는 함수

PERCENT_RANK

파라미터로 주어진 값의 그룹 내의 위치를 나타내 주는 함수

PERCENTILE_CONT

연속 분포 모델에서 파라미터로 주어진 백분위 값에 해당하는 값을 계산하는 역 분포 함수

PERCENTILE_DISC

이산 분포를 가정한 역분산 함수로 분석 함수로도 사용할 수 있

RANK

그룹별로 로우를 정렬한 후 그룹 내의 각 로우의 순위를 반환하는 함수

REGR_SLOPE REGR_INTERCEPT REGR_COUNT REGR_R2 REGR_AVGX REGR_AVGY REGR_SXX REGR_SYY REGR_SXY

임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하기 위해 사용

STATS_MODE

expr최빈값을 반환하는 함수

STDDEV

expr표본 표준편차를 반환하는 함수

STDDEV_POP

expr모표 표준편차를 반환하는 함수

STDDEV_SAMP

expr누적 표본 표준편차를 반환하는 함수

SUM

그룹 내의 모든 로우에 대한 expr 값의 합계를 구하는 함수

VARIANCE

expr분산을 반환

VAR_POP

expr모분산을 반환

VAR_SAMP

expr표본분산을 반환하는 함수

XMLAGG

XML 조각을 받고, 이를 한데 모아 XML 문서로 만들어 반환하는 함수

분석 함수

분석 함수는 집단 함수와 마찬가지로 특정 로우 그룹에 대한 집계 값을 구하는 데 사용됩니다.

집단 함수와 다른 점은 하나의 로우 그룹에 속한 모든 로우가 하나의 집계 값을 공유하지 않습니다는 것이 다. 각각의 로우에 대해 로우 그룹이 별개로 정의되며, 때문에 모든 로우가 별개로 각각 자신의 로우 그룹 에 대한 집계 값을 갖게 됩니다. 이 로우 그룹을 분석 함수에서는 윈도우라고 부르며, analytic_clause 안에 정의됩니다. 윈도우 영역은 물리적인 로우의 개수로 정의될 수도 있고, 논리적인 어떤 계산 값을 통해서 정 의될 수도 있습니다.

하나의 쿼리 블록 안에서 분석 함수는 ORDER BY 절을 제외하고 가장 마지막에 수행되는 연산입니다. WHERE 절, GROUP BY 절, HAVING 절 모두 분석 함수가 수행되기 전에 먼저 적용됩니다. 그러므로 분석 함수는 SELECT 절 또는 ORDER BY 절에만 나올 수 있습니다.

analytic_function

분석 함수는 크게 analytic_function, argument, analytic_clause로 구성됩니다.

analytic_function의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

analytic_function

분석 함수의 이름을 명시

argument

  • 분석 함수의 파라미터를 명시

  • 함수에 따라 파라미터의 타입이 결정됨

OVER analytic_clause

OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있습니다.

analytic_clause

OVER analytic_clause를 사용하여 함수를 분석 함수로 수행할 수 있습니다. 분석 함수는 ORDER BY 절을 제외한 다른 모든 절의 내용이 처리된 다음에 적용됩니다. 그러므로 분석 함수가 계산한 결과의 일부만 선택하 고자 하면, 분석 함수를 수행한 쿼리를 뷰로 둘러싸고, 그 쿼리를 둘러싼 뷰에 WHERE 절을 적용하면 된 다. analytic_clause 안에 분석 함수를 사용할 수는 없습니다. 그러나 부질의 내에 분석 함수를 사용하는 것은 가능합니다.

analytic_clause의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

partition_by

분석 함수를 계산하기 전에 현재 질의 블록의 결과 집합을 분할합니다.

order_by_clause

partition_by에 의해 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

window_clause

  • window_clause를 가질 수 있는 경우가 있음

  • 분석 함수의 order_by_clause를 명시할 경우에만 이 window_clause를 명시할 수 있음음

partition_by

분석 함수를 계산하기 전에 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할합니다. 이 절을 명시하지 않으면, 분석 함수의 윈도우는 전체 로우 집합 내에서 움직이게 됩니다.

하나의 질의 블록의 SELECT 절 또는 ORDER BY 절에 여러 개의 분석 함수를 명시할 수 있으며, 각각이 서로 다른 PARTITION BY 키를 갖는 것도 가능합니다.

partition_by의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

expr이 취할 수 있는 값은 상수, 컬럼, 분석 함수가 아닌 함수로 구성된 연산식

order_by_clause

partition_by에 의해 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시합니다. 정렬에 사용되는 키 값은 여러 개를 명시할 수 있습니다.

분석 함수에서 사용되는 order_by_clause 내에서는 위치 상수(ORDER BY 1과 같은)를 사용할 수 없습니다. SIBLINGS 역시 사용할 수 없습니다. SELECT 리스트 컬럼의 별칭도 사용할 수 없습니다. 그 이외에는 보통의 ORDER BY 절과 사용 방식이 같습니다.

분석 함수에 사용된 order_by_clause는 파티션 내의 로우의 순서를 결정할 뿐이지 분석 함수를 적용하고 난 쿼리 블록의 최종 결과 집합의 로우의 순서를 결정해 주는 것은 아니다. 이를 위해서는 쿼리 블록을 위 한 별도의 ORDER BY 절을 추가로 명시해야만 합니다.

order_by_clause의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

SIBLINGS

  • order_by_clause는 계층 질의의 형제 노드 내에서 정렬 순서를 정의

  • 분석 함수에서는 사용할 수 없음

expr

정렬의 키로 사용되는 연산식

position

  • select_list에 명시된 expr의 위치를 지정

  • 분석 함수에서는 사용할 수 없음

ASC

  • 디폴트로, 정렬 순서를 명시

  • ASC는 오름차순으로 정렬

DESC

  • 정렬 순서를 명시

  • DESC는 내림차순으로 정렬

NULLS FIRST

  • NULL 값의 정렬 순서를 명시

  • NULLS FIRST는 오름차순 정렬의 디폴트로 사용됨

NULLS LAST

  • NULL 값의 정렬 순서를 명시

  • NULLS LAST는 내림차순 정렬의 디폴트로 사용됨

window_clause

분석 함수에 따라 window_clause를 가질 수 있는 경우가 있습니다. 분석 함수의 order_by_clause를 명시할 경 우에만 window_clause를 명시할 수 있습니다. window_clause를 명시하지 않았을 때는 필요한 경우에 디폴트 윈도우로 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW가 지정됩니다.

window_clause의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

ROWS

  • 윈도우 타입을 ROW로 지정하면, 분석 함수는 현재 로우가 정의하는 물리적인 로우 단위로 윈도우를 계산

  • order_by_clause를 기준으로 동률이 생겼을 때, 상위한 로우만 결과로 반환됨

RANGE

  • 윈도우 타입을 RANGE로 지정하면, 현재 로우를 기준으로 논리적 오프셋을 기준으로 윈도우를 정

  • ROW와는 달리, RANGE는 항상 같은 로우가 반환

  • order_by_clause에서 하나의 정렬 키만 명시 가능.

  • 동일한 정렬 결과가 나오는 두 로우의 분석 함수 결과는 항상 같음

  • 예: SUM 함수에서 같은 값을 반환

BETWEEN ... AND

  • 윈도우의 시작점과 끝점을 명시할 때

  • BETWEEN 이후는 시작점, AND 이후는 끝점. 하나만 명시하면, 현재 로우가 끝점이 되며 그 시점이 시작점

다음의 표는 Tibero에서 제공하는 분석 함수와 함수별 window_clause의 명시 가능 여부를 나타냅니다.

AVG

CORR

COUNT

COVAR_POP

COVAR_SAMP

DENSE_RANK

아니오

FIRST

아니오

분석 함수

window_clause 명시 가능 여부

FIRST_VALUE

LAG

아니오

LAST

아니오

LAST_VALUE

LEAD

아니오

MAX

MIN

NTILE

아니오

PERCENT_RANK

아니오

PERCENTILE_CONT

아니오

PERCENTILE_DISC

아니오

RANK

아니오

RATIO_TO_REPORT

아니오

REGR_SLOPE REGR_INTERCEPT REGR_COUNT REGR_R2 REGR_AVGX REGR_AVGY REGR_SXX REGR_SYY REGR_SXY

ROW_NUMBER

아니오

STDDEV

STDDEV_POP

STDDEV_SAMP

SUM

VARIANCE

VAR_POP

VAR_SAMP

window_value

window_value의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

UNBOUNDED PRECEDING

  • 시작점을 명시할 때 사용하며, 파티션의 첫 번째 로우를 지정

  • 끝점으로 사용할 수는 없습니다.

UNBOUNDED FOLLOWING

  • 끝점을 명시할 때 사용하며, 파티션의 맨 마지막 로우를 지

  • 시작점으로 사용할 수는 없음

CURRENT ROW

  • 시작점 또는 끝점으로 사용할 수 있음

  • ROW 또는 RANGE를 명시했을 경우 현재 로우 또는 현재 로우에서 계산된 값을 의미

  • 시작점으로 명시했을 때는 끝점으로 expr PRECEDING을 사용할 수 없으며, 끝점으로 명시했을 경우는 시작점으로 expr FOLLOWING을 사용할 수 없음

expr PRECEDING

  • expr PRECEDING을 끝점에 명시했으면, 시작점은 항상 expr PRECEDING이 되어야 함

expr FOLLOWING

  • expr FOLLOWING을 시작점에 명시했으면, 끝점은 항상 expr FOLLOWING이 되어야 함함

윈도우 타입별로 expr은 다음과 같이 달라집니다.

윈도우 타입이 ROW일 경우에는 다음과 같습니다.

  • expr은 물리적인 오프셋을 지정합니다. 이것은 양수이거나 양수로 계산되는 연산식입니다.

  • 시작점의 로우는 끝점의 로우보다 먼저 나와야 합니다.

윈도우 타입이 RANGE일 경우에는 다음과 같습니다.

  • expr은 논리적인 오프셋을 지정합니다. 이것은 0 또는 양수로 계산되는 연산식 또는 간격 리터럴입니다. 간격 리터럴에 대해서는 “리터럴”을 참고합니다.

  • expr에 수치 값을 사용할 수 있는 경우는 order_by_clause의 expr의 데이터 타입이 NUMBER 또는 DATE 타입일 때입니다.

  • expr에 간격 값을 사용할 수 있는 경우는 order_by_clause의 expr의 데이터 타입이 DATE 타입일 때입니다.

함수 목록

본 절에서는 Tibero에서 제공하는 내장 함수에 대해 설명합니다.

ABS

ABS는 주어진 파라미터 값의 절댓값(Absolute Value)을 구하는 함수입니다.

ABS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 임의의 수치값을 반환하는 연산식

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 예제

다음은 ABS 함수를 사용하는 예입니다.

ACOS

ACOS는 num의 아크 코사인 값을 구하는 함수입니다.

ACOS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • -1 ~ 1 사이의 값을 가져야

  • 반환값은 0 ~ pi 사이의 라디안(Radian)값입니다.

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 숫자형 타입을 반환

  • 예제

다음은 ACOS 함수를 사용하는 예입니다.

ADD_MONTHS

ADD_MONTHS는 date에 integer만큼의 달을 더한 결과를 구하는 함수입니다.

ADD_MONTHS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

date는 DATE 값을 반환하는 임의의 연산식

integer

integer는 정수 값을 저장하는 데이터 타입

  • 예제

다음은 ADD_MONTHS 함수를 사용하는 예입니다.

AGGR_CONCAT

AGGR_CONCAT는 그룹 내의 모든 로우에 대해 문자열과 구분자를 접합하여 하나의 문자열로 만들어 반환하는 함수입니다. NULL 값을 반환하는 파라미터는 결과로부터 제외됩니다.

AGGR_CONCAT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

set_quantifier

질의 결과에 중복된 로우의 허용, 비허용 여부를 지정 DISTINCT, UNIQUE, ALL을 지정할 수 있음

  • DISTINCT, UNIQUE : 중복된 로우를 제거

  • ALL : 모든 로우를 선택 (기본값)

expr

문자열이나 문자열로 변환될 수 있는 임의의 연산식

separator

expr과 접합될 구분자를 나타내는 문자 리터럴

order_by_clause

  • 접합할 문자열을 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 AGGR_CONCAT 함수를 사용하는 예입니다.

APPENDCHILDXML

APPENDCHILDXML은 XPath expression으로 지정된 노드에 사용자가 입력한 XML 값을 이어붙이는 함수입니다. 이미 존재하고 있는 노드들의 뒤부터 삽입됩니다.

APPENDCHILDXML의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

XMLType_instance

XML 타입 객체를 반환하는 임의의 연산식

XPath_string

하나 이상의 자식 노드가 삽입될 위치를 나타내는 XPath 연산식

value_expr

  • 삽입될 하나 이상의 자식 노드를 나타내는 임의의 연산식

  • 이 연산식은 반드시 문자열로 변환 가능해야 함

namespace_string

  • XPath의 네임스페이스 정보를 나타냄

  • 반드시 VARCHAR 타입이어야 함함

  • 예제

다음은 APPENDCHILDXML 함수를 사용하는 예입니다.

ASCII

ASCII는 char의 첫 번째 문자에 대해서 데이터베이스 문자 집합에서의 십진수 표시 값을 반환하는 함수입니다. 만일 현재 데이터베이스의 문자 집합이 7bits ASCII라고 합니다면, 이 함수는 ASCII 값을 반환합니다.

ASCII의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

char

char는 다음 타입 중 하나

  • CHAR

  • VARCAHR

  • NCHAR

  • NVARCHAR

char는 CLOB 타입일 수는 없지만 타입의 변환 함수를 통해 ASCII 함수를 호출 할 수 있음

  • 예제

다음은 ASCII 함수를 사용하는 예입니다.

ASCIISTR

ASCIISTR은 주어진 문자열을 데이터베이스 문자 집합의 아스키 문자열로 반환합니다.

ASCII 이외의 문자 는 \xxxx 형태로 변경됩니다. xxxx는 UTF-16 코드입니다.

ASCIISTR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 ASCII 함수를 사용하는 예입니다. 데이터베이스 문자 집합은 'MSWIN949' 입니다.

ASIN

ASIN는 num의 아크 사인 값을 구하는 함수입니다.

ASIN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • -1 ~ 1 사이의 값을 가져야 함

  • 반환값은 -pi/2 ~ pi/2 사이의 라디안 값

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 숫자형 타입을 반환

  • 예제

다음은 ASIN 함수를 사용하는 예입니다.

ATAN

ATAN은 num의 아크 탄젠트 값을 구하는 함수입니다.

ATAN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • num의 값은 제한이 없으며 반환값은 -pi/2 ~ pi/2 사이의 라디안 값

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 숫자형 타입을 반환

  • 예제

다음은 ATAN 함수를 사용하는 예입니다.

ATAN2

ATAN2는 아크 탄젠트 값을 구하는 함수입니다. n과 m의 아크 탄젠트 값을 구합니다.

ATAN2(num1, num2)은 ATAN(num1/num2)과 같습니다.

ATAN2의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1, num2

  • num1, num2의 값은 제한이 없으며 반환값은 -pi/2 ~ pi/2 사이의 라디안 값

  • num1, num2는 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • num1이나 num2의 타입이 BINARY_FLOAT이나 BINARY_DOUBLE일 경우엔 BINA RY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 NUMBER 타입을 반환

  • 예제

다음은 ATAN2 함수를 사용하는 예입니다.

AVG

AVG는 그룹 내의 모든 로우에 대한 expr 값의 평균을 구하는 함수입니다.

AVG의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고

expr

expr은 임의의 연산식이며, “연산식”에서 이미 정의하였음

ALL

  • ALL은 기본값

  • expr 값 중에서 중복되는 값을 제거하지 않고, 모든 값의 평균을 구함

DISTINCT

  • expr 앞에 DISTINCT 예약어를 포함시키면, 평균을 구하기 전에 expr 값 중에서 중복되는 값을 제거

  • DISTINCT를 명시할 경우는 analytic_clause에서 query_partition_clause만 명시할 수 있음

  • order_by_clause는 명시할 수 없음

  • order_by_clause를 명시할 수 없으므로 window_clause 또한 명시할 수 없음

UNIQUE

UNIQUE는 DISTINCT와 동일

  • 예제

다음은 AVG 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 AVG 함수를 분석 함수로 사용하는 예입니다.

BIN_TO_NUM

BIN_TO_NUM는 bit vector를 해당 정수 값으로 변환해주는 함수입니다.

BIN_TO_NUM의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr는 숫자형 타입이나 숫자형 타입으로 변환될 수 있는 값을 반환하는 임의의 연산식

  • expr의 반환 값이 숫자형 타입이 아니면 숫자형 타입으로 변환 후 정수 값으로 변환해서 사용(trunc() 결과와 같음)

  • 변환 후의 정수 값은 0 또는 1 이어야 함함

  • 예제

다음은 BIN_TO_NUM 함수를 사용하는 예입니다.

BITAND

BITAND는 expr1과 expr2의 각 비트를 AND 연산한 결과를 구하는 함수입니다.

BITAND의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1, expr2

expr1과 expr2는 정수 값을 반환하는 임의의 연산식

  • 예제

다음은 BITAND 함수를 사용하는 예입니다.

CAST

CAST는 하나의 데이터 타입에서 다른 데이터 타입으로 변경하는 함수입니다.

CAST의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
문법

expr

expr은 임의의 데이터 타입을 반환하는 임의의 연산식

typename

typename은 변환할 데이터 타입의 이름을 명시

  • 예제

다음은 CAST 함수를 사용하는 예입니다.

CEIL

CEIL은 주어진 파라미터의 값보다 크거나 같은 가장 작은 정수를 구하는 함수입니다.

CEIL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 수치 값을 반환하는 임의의 연산식

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 하고, num 과 동일한 숫자형 타입을 반환

  • 예제

다음은 CEIL 함수를 사용하는 예입니다.

CHARTOROWID

CHARTOROWID는 CHAR, VARCHAR, NCHAR, NVARCHAR 형식의 값을 ROWID 형식으로 변환하는함수입니다.

CHARTOROWID의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

ROWID 형식으로 변환할 임의의 값

  • 예제

다음은 CHARTOROWID 함수를 사용하는 예입니다.

CHR

CHR은 num에 대응하는 문자를 구하는 함수입니다.

CHR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

num은 수치 값을 반환하는 임의의 연산식

  • 예제

다음은 CHR 함수를 사용하는 예입니다.

COALESCE

COALESCE는 NULL이 아닌 첫 파라미터를 반환하는 함수입니다. 모든 파라미터가 NULL 값을 갖습니다면NULL을 반환합니다.

COALESCE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

expr은 다른 expr과 서로 동일하거나 호환할 수 있는 타입의 임의의 연산식

  • 예제

다음은 COALESCE 함수를 사용하는 예입니다.

COMPOSE

COMPOSE는 입력받은 문자열을 NFC 정규 형태의 유니코드 문자열로 변환하는 함수입니다.

COMPOSE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 COMPOSE 함수를 사용하는 예입니다.

CONCAT

CONCAT은 두 개의 문자열을 접합하여 하나의 문자열을 반환하는 함수입니다. 접합 연산자(||)를 사용했을 때와 같은 결과를 얻는다. 두 파라미터 중에서 하나가 NULL이더라도 NULL을 반환하지는 않습니다.

CONCAT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str1, str2

str1과 str2는 문자열을 반환하는 임의의 연산식

  • 예제

다음은 CONCAT 함수를 사용하는 예입니다.

CONVERT

CONVERT은 주어진 문자열을 다른 문자집합의 문자열로 변환합니다. 대응하는 문자가 없습니다면 '?'로 대체됩니니다.

CONVERT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

dest_char_set

  • 변환하려는 문자 집합명을 명시

  • 데이터베이스 문자 집합명을 사용할 수 있음

  • 그 외에 ISO2022-KR, US8ICL 문자집합을 사용할 수 있음

source_char_set

  • str의 문자 집합명을 명시

  • 명시하지 않으면 데이터베이스 문자 집합명이 기본값으로 사용

  • 예제

다음은 CONVERT 함수를 사용하는 예입니다.

CORR

CORR은 파라미터로 주어진 expr1가 expr2의 상관계수를 계산하는 함수입니다. 분석 함수로도 사용할 수 있습니다. 이 함수는 모든 수치 데이터 타입과 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환할 수 있는 데이터 타입을 파라미터로 받아 들인다. 입력된 파라미터의 수치 데이터 타입 또는 변환된 수치 데이터 타입을 반환합니다.

Tibero에서는 다음의 공식을 사용해 상관계수를 계산합니다.

CORR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1, expr2

expr1과 expr2는 수치 데이터 타입의 값을 반환하는 임의의 연산식

OVER analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 CORR 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 CORR 함수를 분석 함수로 사용하는 예입니다.

COS

COS는 주어진 파라미터 값의 코사인(Cosine)값을 구하는 함수입니다.

COS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 실수 값을 반환하는 임의의 연산식 (단위: 라디안)

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 타입을 반환

  • 예제

다음은 COS 함수를 사용하는 예입니다.

COSH

COSH는 주어진 파라미터 값의 하이퍼볼릭 코사인(Hyperbolic Cosine) 값을 구하는 함수입니다.

COSH의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 실수 값을 반환하는 임의의 연산식 (단위: 라디안)

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하 고, 그렇지 않은 경우엔 num과 동일한 타입을 반환

  • 예제

다음은 COSH 함수를 사용하는 예입니다.

COUNT

COUNT는 쿼리가 반환하는 로우의 개수를 세는 함수입니다. 분석 함수로도 사용할 수 있습니다.

COUNT 함수 는 항상 숫자를 반환하고 NULL을 반환하는 경우는 없습니다.

COUNT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

set_quantifier

질의 결과에 중복된 로우의 허용, 비허용 여부를 지정

DISTINCT, UNIQUE, ALL을 지정할 수 있음

  • DISTINCT, UNIQUE : 중복된 로우를 제거

  • ALL : 모든 로우를 선택 (기본값)

*

애스터리스크(*)를 명시하면 중복된 로우와 그리고 NULL 값을 포함한 모든 로우를 개수에 포함시킴

expr

  • expr을 명시할 경우는, COUNT 함수는 expr의 값이 NULL이 아닐 경우에만 로우를 개수에 포함시킴

  • DISTINCT를 명시함으로써 expr의 값을 구했을 때 중복을 제거한 로우만 셀 수 있음

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 COUNT 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 COUNT 함수를 분석 함수로 사용하는 예입니다.

COVAR_POP

COVAR_POP는 expr1, expr2의 모공분산을 계산하는 함수입니다. 분석 함수로도 사용할 수 있습니다.

이 함수는 모든 수치 데이터 타입과 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환 할 수 있는 데이터 타입을 파라미터로 받아 들인다. NUMBER 타입을 반환합니다.

Tibero에서는 다음의 공식을 사용해 모공분산을 계산합니다.

여기서 n은 expr1과 expr2 둘 모두가 NULL이 아닌 로우의 개수입니다.

COVAR_POP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1, expr2

expr1과 expr2는 수치 데이터 타입의 값을 반환하는 임의의 연산식

OVER analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 COVAR_POP 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 COVAR_POP 함수를 분석 함수로 사용하는 예입니다.

COVAR_SAMP

COVAR_SAMP는 expr1, expr2의 표본공분산을 계산하는 함수입니다. 분석 함수로도 사용할 수 있습니다.

이 함수는 모든 수치 데이터 타입과 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환 할 수 있는 데이터 타입을 파라미터로 받아 들인다. NUMBER 타입을 반환합니다.

Tibero에서는 다음의 공식을 사용해 표본공분산을 계산합니다.

여기서 n은 expr1, expr2 모두 NULL이 아닌 로우의 개수입니다.

COVAR_SAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1, expr2

expr1과 expr2는 수치 데이터 타입의 값을 반환하는 임의의 연산식

OVER analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고합니다.

  • 예제

다음은 COVAR_SAMP 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 COVAR_SAMP 함수를 분석 함수로 사용하는 예입니다.

CUME_DIST

CUME_DIST는 그룹 내의 누적 분포를 계산하는 함수입니다. 반환값은 NUMBER 타입이며 0 보다 크고 1보다 작거나 같은 값을 가진다.

누적 분포를 계산하는 방법은 그룹의 로우를 정렬 스펙으로 정렬한 뒤 파라미터로 주어진 값을 갖는 가상 의 로우를 삽입한 위치를 계산하여 그룹의 로우 개수로 나누는 것입니다.

CUME_DIST의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

expr은 한 그룹 안에서는 상수 값이어야 하며, order_by_clasuse의 표현식과 대응되어야 함

order_by_clause

  • 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 CUME_DIST 함수를 사용하는 예입니다.

CURRENT_DATE

CURRENT_DATE는 현재 세션의 시간대를 기준으로 현재 날짜를 그레고리력으로 출력하는 함수입니다.

CURRENT_DATE의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 CURRENT_DATE 함수를 사용하는 예입니다.

CURRENT_TIME

CURRENT_TIME은 현재 세션의 시간대를 기준으로 현재 시간을 출력하는 함수입니다.

CURRENT_TIME의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 CURRENT_TIME 함수를 사용하는 예입니다.

CURRENT_TIMESTAMP

CURRENT_TIMESTAMP는 현재 세션의 시간대를 기준으로 현재 날짜 및 시간을 출력하는 함수입니다. 이 함수의 반환값은 TIMESTAMP WITH TIME ZONE 타입입니다.

CURRENT_TIMESTAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 CURRENT_TIMESTAMP 함수를 사용하는 예입니다.

DBTIMEZONE

DBTIMEZONE는 데이터베이스의 시간대 정보를 오프셋([+|-]TZH:TZM) 형식이나 지역 이름(TZR) 형식으 로 반환하는 함수입니다.

DBTIMEZONE의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 DB TIMEZONE이 +00:00으로 설정된 경우 DBTIMEZONE 함수를 사용하는 예입니다.

DECODE

DECODE는 각 search를 비교하여, 같은 값을 가지는 search에 대응하는 result 값을 구하는 함수입니다. 수 치, 문자 데이터 타입 모두 파라미터로 사용할 수 있습니다. expr, search, result 그리고 default를 합해서 최대 255까지의 표현식을 사용할 수 있습니다.

DECODE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

search와 데이터 타입이 동일하거나 암묵적 변환을 통해 동일한 타입으로 변환이 가능해야 함

search

  • expr에 대응되는 조건값

  • 모든 search의 타입은 첫 번째 search의 타입과 동일하거나 데이터 타입의 암묵적 변환이 가능해야 함

result

  • search와 일치하는 경우 반환할 값

  • 모든 result의 타입은 첫 번째 result의 타입과 동일하거나 데이터 타입의 암묵적 변환이 가능해야 함

default

  • 같은 값을 갖는 search가 없을 때 default에 명시된 값을 반환

  • default의 값이 명시되지 않은 경우 NULL을 반환

  • default의 타입은 첫 번째 result의 타입과 동일하거나 데이터 타입의 암묵적 변환이 가능해야 함

  • 예제

다음은 DECODE 함수를 사용하는 예입니다.

DECOMPOSE

DECOMPOSE는 입력받은 유니코드 문자열을 분해(decomposition)한 문자열을 반환하는 함수입니다.

DECOMPOSE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

CANONICAL

COMPOSE 함수를 통해 원본 문자열을 복원할 수 있는 정규 분해를 함

COMPATIBILITY

호환 모드를 분해합니다. 이 모드에서는 COMPOSE 함수를 통해 복원할 수 없음

  • 예제

다음은 DECOMPOSE 함수를 사용하는 예입니다. (결과는 사용자의 문자 집합(Character set)에 따라 달라질 수 있음)

DELETEXML

DELETEXML은 XPath expression으로 지정된 노드를 XML에서 제거하는 함수입니다.

DELETEXML의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xmltype_instance

XMLType instance

xpath_string

Xpath expression으로 지우려는 XML Element의 위치를 나타냄

namespace_string

  • XPath_string의 네임스페이스 정보를 나타냄

  • VARCHAR 타입이어야 함

  • 예제

다음은 DELETEXML 함수를 사용하는 예입니다.

DENSE_RANK

DENSE_RANK는 각 그룹별로 로우를 정렬한 다음 그룹 내의 각 로우에 대한 순위를 반환하는 함수입니다. 분석 함수로도 사용할 수 있습니다.

반환된 순위는 다음과 같은 특징이 있습니다.

  • 데이터 타입은 NUMBER입니다.

  • 1부터 시작하는 연속적인 정수 값입니다.

  • 최댓값은 중복되는 값을 하나로 계산했을 때 전체 로우의 개수가 됩니다.

  • 중복된 값이 나타났을 때 다음 순위의 값은 건너뛰지 않고 1이 증가한 값이 부여됩니다. 중복된 값은 모두 같은 순위의 값이 부여됩니다.

계산 방법은 다음과 같이 함수에 따라 달라진다.

함수 종류
설명

집계 함수

  • 파라미터 값으로 구성된 가상의 로우에 대한 순위 값을 계산

  • 파라미터는 각 그룹마다 상수 값을 가져야 하며 order_by_clause의 표현식과 대응되어야 함

분석 함수

  • 각 로우의 그룹 내 순위를 반환

  • 순위는 order_by_clause 내의 expr 값을 기준으로 정렬한 결과가 부여됨

DENSE_RANK의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

– dense_rank_aggregation

구성요소
설명

expr

임의의 연산식

order_by_clause

  • 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

– dense_rank_analytic

구성요소
설명

partition_by

  • 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

order_by_clause

  • 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 DENSE_RANK 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 DENSE_RANK 함수를 분석 함수로 사용하는 예입니다.

DUMP

DUMP는 함수는 파라미터로 주어진 expr의 내부의 표현 정보를 반환하는 함수입니다. 반환되는 값은 바이 트 스트림과 길이 정보이며 VARCHAR2 타입입니다. 단, LONG, CLOB, BLOB 타입에는 이 함수를 적용할 수 없습니다.

DUMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

임의의 연산식

fmt

바이트 스트림의 형식을 지정

fmt는 다음의 값을 가질 수 있음

  • 8 : 8진법 표현

  • 10 : 10진법 표현(기본값)

  • 16 : 16진법 표현

  • 17 : 문자 표현

offset

시작 오프셋을 나타냄

len

  • 표시할 byte의 길이를 지정

  • expr의 값이 NULL이면 NULL을 출력

  • 예제

다음은 DUMP 함수를 사용하는 예입니다.

EMPTY_BLOB

EMPTY_BLOB은 BLOB 타입의 컬럼을 초기화하기 위해 빈 LOB Locator를 반환하는 함수입니다.

EMPTY_BLOB의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 EMPTY_BLOB 함수를 사용하는 예입니다.

EMPTY_CLOB

EMPTY_CLOB은 CLOB 타입의 컬럼을 초기화하기 위해 비어 있는 LOB Locator를 반환하는 함수입니다.

EMPTY_CLOB의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 EMPTY_CLOB 함수를 사용하는 예입니다.

EXISTSNODE

EXISTSNODE는 XML 문서에서 질의한 XPath에 해당 노드가 있는지 검사하는 함수입니다. 반환되는 값은

NUMBER 타입이며, 해당 노드가 있으면 1을 없으면 0을 반환합니다.

EXISTSNODE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml

질의의 대상이 되는 XML 문서로, XML 타입

xpath_str

질의할 XPath 문자열로, 최대 길이는 4000자

namespace_str

XML 문서에서 네임스페이스가 필요할 때 사용하는 옵션으로 VARCHAR 타입

  • 예제

다음은 EXISTSNODE 함수를 사용하는 예입니다.

EXP

EXP는 자연 로그(Natural Log)의 밑(Base) e(= 2.7182818284…)의 주어진 파라미터의 제곱 값을 구하는 함수입니다.

EXP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 수치 값을 반환하는 임의의 연산식

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하 고, 그렇지 않은 경우엔 num과 동일한 타입을 반환

  • 예제

다음은 EXP 함수를 사용하는 예입니다.

EXTRACT

EXTRACT는 일시(날짜형) 또는 시간 간격(Interval) 값에서 특정 부분의 값을 추출하고 싶을 때 사용하는 함수입니다. 반환되는 값은 그레고리력을 따른다. 값을 추출할 때는 추출할 값이 원래의 연산식에 존재해야 만 합니다.

EXTRACT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

YEAR

연도를 저장하는 날짜형 데이터 타입

MONTH

달을 저장하는 날짜형 데이터 타입

DAY

날짜를 저장하는 데이터 타입

HOUR

시를 저장하는 데이터 타입

MINUTE

분을 저장하는 데이터 타입

SECOND

초를 저장하는 데이터 타입

TIMEZONE_HOUR

시간대 오프셋 시를 저장하는 데이터 타입

TIMEZONE_MINUTE

시간대 오프셋 분을 저장하는 데이터 타입

TIMEZONE_REGION

시간대 지역 이름을 저장하는 데이터 타입

TIMEZONE_ABBR

시간대 일광절약시간 약어를 저장하는 데이터 타입

  • 예제

다음은 EXTRACT 함수를 사용하는 예입니다.

EXTRACT(XML)

EXTRACT(XML)는 XML 문서에서 XPath를 이용하여 해당 XML의 노드를 반환하는 함수입니다.

EXTRACT(XML)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml

질의의 대상이 되는 XML 문서로, XML 타입

xpath_str

질의할 XPath 문자열로, 최대 길이는 4000자

namespace_str

XML 문서에서 네임스페이스가 필요할 때 사용하는 옵션으로 VARCHAR 타입

  • 예제

다음은 EXTRACT(XML) 함수를 사용하는 예입니다.

EXTRACTVALUE

EXTRACTVALUE는 XML 문서에서 XPath를 이용하여 해당 값을 VARCHAR 타입으로 반환하는 함수입니니다.

EXTRACTVALUE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml

질의의 대상이 되는 XML 문서로, XML 타입

xpath_str

질의할 XPath 문자열로, 최대 길이는 4000자

namespace_str

XML 문서에서 네임스페이스가 필요할 때 사용하는 옵션으로 VARCHAR 타입

  • 예제

다음은 EXTRACTVALUE 함수를 사용하는 예입니다.

FIRST

FIRST는 정렬된 로우에서 처음에 해당하는 로우를 뽑아내어 명시된 집단함수를 적용한 결과를 반환합니다. 현재 분석 함수는 지원하지 않습니다.

FIRST 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

aggregate_function

사용가능한 집단 함수는 AVG, COUNT, MIN, MAX, SUM, STADDEV, VARIANCE

expr

임의의 연산식

  • 예제

다음은 FIRST 함수를 사용하는 예입니다.

FIRST_VALUE

FIRST_VALUE는 정렬된 로우에서 첫 번째 값을 반환하는 분석함수입니다. IGNORE NULLS를 명시하면

NULL이 아닌 첫 번째 값을 반환합니다. 만약 모든 값이 NULL이라면 NULL을 반환합니다.

FIRST_VALUE 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

임의의 연산식

  • 예제

다음은 FIRST_VALUE 함수를 사용하는 예입니다.

FLOOR

FLOOR는 주어진 파라미터의 값보다 작거나 같은 가장 큰 정수를 구하는 함수입니다. FLOOR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

수치 값을 반환하는 임의의 연산식

  • 예제

다음은 FLOOR 함수를 사용하는 예입니다.

FROM_TZ

FROM_TZ는 주어진 TIMESTAMP 값과 시간대를 이용하여 TIMESTAMP WITH TIME ZONE 값으로 바꿔 주는 함수입니다.

FROM_TZ의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

timestamp_value

시간값을 반환하는 임의의 연산식

timezone_value

시간대 지역 이름이나 오프셋을 반환하는 임의의 연산식

  • 예제

다음은 FROM_TZ 함수를 사용하는 예입니다.

GETBLOBVAL

GETBLOBVAL는 XML 타입을 BLOB 형태로 변환하여 반환하는 함수입니다.

GETBLOBVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml

BLOB 형태로 변환할 XML 타입 객체

csid

BLOB 형태로 변환할 때 사용할 characterset의 ID

  • 예제

다음은 GETBLOBVAL 함수를 사용하는 예입니다.

GETCLOBVAL

GETCLOBVAL는 XML 타입을 CLOB형태로 변환하여 반환하는 함수입니다.

GETCLOBVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml

CLOB 형태로 변환할 XML 타입 객체

  • 예제

다음은 GETCLOBVAL 함수를 사용하는 예입니다.

GETROOTELEMENT

GETROOTELEMENT는 XML 타입 instance의 root element를 VARCHAR 타입으로 반환하는 함수입니다.

GETROOTELEMENT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml

XML 타입 instance

  • 예제

다음은 GETROOTELEMENT 함수를 사용하는 예입니다.

GETSTRINGVAL

GETSTRINGVAL는 XML 타입을 VARCHAR 타입으로 변환하여 반환하는 함수입니다.

GETSTRINGVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml

VARCHAR 타입으로 변환할 XML 타입 객체

  • 예제

다음은 GETSTRINGVAL 함수를 사용하는 예입니다.

GREATEST

GREATEST는 파라미터 중 가장 큰 값을 구하는 함수입니다.

GREATEST의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 GREATEST 함수를 사용하는 예입니다.

GROUPING

GROUPING은 Superaggreagate 로우와 Regular grouped 로우를 구분하기 위하여 사용하는 함수입니다.

ROLLUP과 CUBE는 Superaggreagate 로우를 생성하는데, 이때 모든 값의 집합은 NULL로 표현됩니다. GROUPING 함수를 사용하면 로우의 컬럼 값 NULL과 Superaggreagate 로우에서 모든 값의 집합을 나타 내기 위한 값 NULL을 구분할 수 있습니다. expr의 값이 모든 값의 집합을 나타낸다. NULL일 경우에는 1을 반 환하고, 그렇지 않을 경우에는 0을 반환합니다. 반환된 값은 NUMBER 타입입니다.

GROUPING의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

GROUP BY 절에 명시된 expr 중의 하나와 대응해야 함

  • 예제

다음은 GROUPING 함수를 사용하는 예입니다.

GROUPING_ID

GROUPING_ID는 로우의 GROUPING 비트 벡터(Bit Vector)에 해당하는 NUMBER를 반환하는 함수입니다.

GROUPING_ID는 여러 GROUPING 함수의 결과를 비트 벡터로 통합하는 것과 같습니다. GROUPING_ID 함 수를 사용하면 다수의 GROUPING 함수를 사용하는 것을 피할 수 있으며, 로우 필터링의 조건을 보다 쉽 게 표현할 수 있습니다. GROUPING_ID를 이용한 로우 필터링은 GROUPING_ID = n과 같은 조건으로 간단히 처리할 수 있습니다.

GROUPING_ID는 GROUPING 함수와 ROLLUP 또는 CUBE가 사용된 SELECT 문에서만 사용할 수 있 다. GROUP BY가 여러 번 사용된 질의의 경우 특정 로우의 GROUP BY 수준을 결정하기 위해서는 GROUPING 함수를 여러 번 사용해야 하는데, 이는 복잡한 SQL 문장을 생성하게 됩니다. GROUPING_ID 는 이러한 경우에 유용합니다.

GROUPING_ID의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

GROUP BY clause에 명시된 expr 중의 하나와 대응해야 함

  • 예제

다음은 GROUPING_ID 함수를 사용하는 예입니다.

GROUP_ID

GROUP_ID는 GROUP BY의 결과에서 중복된 그룹을 구분하는 함수입니다. 이는 쿼리 결과에서 중복된 그 룹을 걸러내는 데 유용하게 쓰인다. 중복된 그룹 로우를 구분할 수 있는 NUMBER 타입의 값을 반환합니다. 이 함수는 GROUP BY 절이 사용된 SELECT 문에만 사용할 수 있습니다.

GROUP_ID의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

HEXTORAW

HEXTORAW는 16진수로 표현된 문자열의 RAW 값을 구하는 함수입니다.

HEXTORAW의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

16진수 형태의 문자열 값을 반환하는 임의의 연산식

  • 예제

다음은 RAW 컬럼이 있는 테이블을 만들고, HEXTORAW 함수를 이용해 16진수의 값을 컬럼에 삽입하는 예입니다.

INET_ATON

INET_ATON은 문자열 형식의 네트워크 주소를 파라미터로 받아 들여 그 주소에 해당하는 수치 값을 반 환하는 함수입니다. 4bytes와 8bytes의 주소 모두 사용할 수 있습니다.

반환된 값을 저장하기 위해서는 UNSIGEND INT를 사용해야 합니다. SIGNED INT를 사용하면 주소의 첫 옥 텟(Octet)의 값이 127보다 크면 올바로 저장되지 않습니다.

INET_ATON의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

문자열 형식의 네트워크 주소

  • 예제

다음은 INET_ATON 함수를 사용하는 예입니다.

INET_NTOA

INET_NTOA는 수치 값의 네트워크 주소를 받아들여 문자열 형식으로 된 네트워크 주소를 반환하는 함수 입니다.

INET_NTOA의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

네트워크 주소를 수치 값으로 표현한 것

  • 예제

다음은 INET_NTOA 함수를 사용하는 예입니다.

INITCAP

INITCAP는 첫 문자는 대문자, 나머지는 소문자로 변환된 문자열을 구하는 함수입니다.

INITCAP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 INITCAP 함수를 사용하는 예입니다.

INSERTCHILDXML

INSERTCHILDXML은 XPath expression으로 지정된 노드의 자식 노드에 사용자가 입력한 XML 값을 삽 입하는 함수로, INSERTXMLBEFORE 함수와 차이가 있습니다.

INSERTCHILDXML의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

XMLType_instance

XML 타입 객체를 반환하는 임의의 연산식

XPath_string

하나 이상의 자식 노드가 삽입될 위치를 나타내는 XPath 연산식

child_expr

삽입될 자식 노드의 원소나 속성을 나타내는 임의의 연산식

value_expr

  • 삽입될 하나 이상의 자식 노드를 나타내는 임의의 연산식

  • 이 연산식은 반드 시 문자열로 변환 가능해야 함

namespace_string

  • XPath의 네임스페이스 정보를 나타냄

  • 반드시 VARCHAR 타입이어야 함

  • 예제

다음은 INSERTCHILDXML 함수를 사용하는 예입니다.

INSERTCHILDXMLAFTER

INSERTCHILDXMLAFTER은 XPath expression으로 지정된 노드에 사용자가 입력한 XML 값을 삽입하 는 함수입니다. 이전에 존재하고 있는 자식 노드들의 뒤부터 삽입됩니다.

INSERTCHILDXMLAFTER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

XMLType_instance

XML 타입 객체를 반환하는 임의의 연산식

XPath_string

하나 이상의 자식 노드가 삽입될 위치를 나타내는 XPath 연산식

child_expr

삽입될 자식 노드의 원소나 속성을 나타내는 임의의 연산식

value_expr

삽입될 하나 이상의 자식 노드를 나타내는 임의의 연산식

이 연산식은 반드 시 문자열로 변환 가능해야 함

namespace_string

  • XPath의 네임스페이스 정보를 나타냄

  • 반드시 VARCHAR 타입이어야 함

  • 예제

다음은 INSERTCHILDXMLAFTER 함수를 사용하는 예입니다.

INSERTCHILDXMLBEFORE

INSERTCHILDXMLBEFORE은 XPath expression으로 지정된 노드에 사용자가 입력한 XML 값을 삽입하 는 함수입니다. 이전에 존재하고 있는 자식 노드들의 앞부터 삽입됩니다.

INSERTCHILDXMLBEFORE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

XMLType_instance

XML 타입 객체를 반환하는 임의의 연산식

XPath_string

하나 이상의 자식 노드가 삽입될 위치를 나타내는 XPath 연산식

child_expr

삽입될 자식 노드의 원소나 속성을 나타내는 임의의 연산식

value_expr

  • 삽입될 하나 이상의 자식 노드를 나타내는 임의의 연산식

  • 이 연산식은 반드 시 문자열로 변환 가능해야 함

namespace_string

  • XPath의 네임스페이스 정보를 나타냄

  • 반드시 VARCHAR 타입이어야 함

  • 예제

다음은 INSERTCHILDXMLBEFORE 함수를 사용하는 예입니다.

INSERTXMLAFTER

INSERTXMLAFTER은 XPath expression으로 지정된 노드에 사용자가 입력한 XML 값을 삽입하는 함수 입니다. 이전에 존재하고 있는 노드들의 뒤부터 삽입됩니다.

INSERTXMLAFTER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

XMLType_instance

XML 타입 객체를 반환하는 임의의 연산식

XPath_string

하나 이상의 자식 노드가 삽입될 위치를 나타내는 XPath 연산식

value_expr

  • 삽입될 하나 이상의 자식 노드를 나타내는 임의의 연산식

  • 이 연산식은 반드 시 문자열로 변환 가능해야 함

namespace_string

  • XPath의 네임스페이스 정보를 나타냄

  • 반드시 VARCHAR 타입이어야 함

  • 예제

다음은 INSERTXMLAFTER 함수를 사용하는 예입니다.

INSERTXMLBEFORE

INSERTXMLBEFORE은 XPath expression으로 지정된 노드에 사용자가 입력한 XML 값을 삽입하는 함 수입니다. 이전에 존재하고 있는 노드들의 이전부터 삽입됩니다.

INSERTXMLBEFORE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

XMLType_instance

XML 타입 객체를 반환하는 임의의 연산식

XPath_string

하나 이상의 자식 노드가 삽입될 위치를 나타내는 XPath 연산식

value_expr

  • 삽입될 하나 이상의 자식 노드를 나타내는 임의의 연산식

  • 이 연산식은 반드 시 문자열로 변환 가능해야 함

namespace_string

  • XPath의 네임스페이스 정보를 나타냄

  • 반드시 VARCHAR 타입이어야 함함

  • 예제

다음은 INSERTXMLBEFORE 함수를 사용하는 예입니다.

INSTR

INSTR은 문자열 str 내에서 문자열 substr을 찾아 그 위치를 반환하는 함수입니다. 추가로 INSTRB 함수는 문자 대신 byte 단위로 위치를 계산하여 그 위치를 반환합니다.

INSTR, INSTRB의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str, substr

  • 모두 문자열을 반환하는 임의의 연산식

  • 만약 문자열 str 내에서 문자열 substr 을 발견하지 못하면 0을 반환

  • 문자열의 위치 값은 1부터 시작됨

position

  • 0이 아닌 정수 값을 반환하는 임의의 연산식(기본값: 1)

  • position이 주어지면 문자열 str의 position 위치에서부터 탐색을 시작

  • 만약 position이 음수이면 문자열 str의 뒤에서부터 탐색을 시작

occurrence

  • 0이 아닌 정수 값을 반환하는 임의의 연산식(기본값: 1)

  • occurrence가 주어지면 탐색 문자열 내에서 occurrence번째에 나타나는 문자열 substr의 위치를 반환

  • occurrence는 양의 정수이어야 함

  • 예제

다음은 INSTR 함수를 사용하는 예입니다.

ISFRAGMENT

ISFRAGMENT은 xmltype_instance가 fragment이면 1을 반환하고, well-formed document이면 0을 반환 하는 함수입니다.

ISFRAGMENT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xmltype_instance

질의의 대상이 되는 XML 문서로, XMLType

  • 예제

다음은 ISFRAGMENT 함수를 사용하는 예입니다.

JSON_ARRAY

JSON_ARRAY는 인자로 사용된 표현식을 JSON 값으로 변환하고, 해당 JSON 값들이 포함된 JSON 배 열을 반환하는 함수입니다.

JSON_ARRAY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

json_array_element

  • expr에는 JSON 객체, JSON 배열, 리터럴 데이터 또는 null 등을 지정할 수 있음

  • FORMAT JSON을 지정하여 입력 문자열이 JSON임을 나타내고, 인용되지 않은 결과를 반환

json_on_null_claus

  • expr이 null일 때 함수의 동작을 지정하는 구문

  • 지정하지 않을 경우 기본값은 ABSENT ON NULL

json_returning_clause

  • 함수에서 반환된 값의 데이터 형식과 포맷을 지정하는 구문

  • 지정하지 않을 경우 기본값은 VARCHAR2(65532)

  • 예제

다음은 JSON_ARRAY 함수를 사용하는 예입니다.

JSON_ARRAYAGG

JSON_ARRAYAGG는 집합 함수입니다. SQL 표현식을 인자로 받아서 각 표현식을 JSON 값으로 변환한 후, 해당 JSON 값들을 포함하는 단일 JSON 배열을 반환합니다.

JSON_ARRAYAGG의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr에는 JSON 객체, JSON 배열, 리터럴 데이터 또는 null 등을 지정할 수 있음

  • FORMAT JSON을 지정하여 입력 문자열이 JSON임을 나타내고, 인용되지 않은 결과를 반환

order_by_clause

  • 접합할 문자열을 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

json_on_null_clause

  • expr이 null일 때 함수의 동작을 지정하는 구문

  • 지정하지 않을 경우 기본값은 ABSENT ON NULL

json_returning_clause

  • 함수에서 반환된 값의 데이터 형식과 포맷을 지정하는 구문

  • 지정하지 않을 경우 기본값은 VARCHAR2(65532)

  • 예제

다음은 JSON_ARRAYAGG 함수를 사용하는 예입니다.

JSON_EACH_TEXT

JSON_EACH_TEXT는 JSON 객체를 JSON KEY/VALUE 쌍의 세트로 확장하는 함수입니다. 이 함수는

FROM 절에서만 사용 가능합니다.

JSON_EACH_TEXT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

expr에는 JSON 객체를 지정할 수 있음

  • 예제

다음은 JSON_EACH_TEXT 함수를 사용하는 예입니다.

JSON_EQUAL

JSON_EQUAL은 두 JSON 값을 비교하여 같은지 판단하는 함수입니다.

JSON_EQUAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

expr에는 JSON 객체, JSON 배열, 리터럴 데이터 또는 null 등을 지정할 수 있음

json_equal_on_error_clause

  • 오류가 발생할 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 기본값은 FALSE ON NULL

  • 예제

다음은 JSON_EQUAL 함수를 사용하는 예입니다.

JSON_MERGEPATCH

JSON_MERGEPATCH는 JSON 문서를 수정하는 함수입니다. JSON 문서를 수정하기 위해서는 수정 시킬 또 다른 JSON 문서가 필요합니다. JSON_MERGEPATCH 함수는 RFC 7396을 따른다.

JSON_MERGEPATCH의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

json_target_expr

수정이 되는 JSON 문서의 표현식

json_patch_expr

수정 시킬 JSON 문서의 표현식

json_returning_clause

  • 함수에서 반환된 값의 데이터 형식과 포맷을 지정하는 구문

  • 지정하지 않을 경우 기본값은 VARCHAR2(65532)

PRETTY

개행과 인덴트를 추가하여 결과를 출력

TRUNCATE

VARCHAR2 타입으로 리턴할 때 SIZE보다 긴 경우 SIZE만큼만 출력

json_mergepatch_on_er ror_clause

  • 오류가 발생할 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 기본값은 NULL ON ERROR

  • 예제

다음은 JSON_MERGEPATCH 함수를 사용하는 예입니다.

JSON_EXISTS

JSON_EXISTS는 지정된 JSON 값이 JSON data에 존재하는지 확인하는 함수입니다.

JSON_EXISTS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

expr은 질의의 대상이 되는 JSON data

json_path_expression

  • 질의할 JSON 경로 표현식

  • 경로 표현식은 리터럴 값이어야 함

json_passing_clause

passing 절을 사용하여 경로 표현식에 값을 전달

json_exists_on_error_clause

  • expr이 올바른 형식의 JSON 데이터가 아닐 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 기본값은 FALSE ON ERROR

json_exists_on_empty_clause

  • 일치하는 항목이 없을 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 json_exists_on_error_clause 구문에 따라 반환 값을 결정

  • 예제

다음은 JSON_EXISTS 함수를 사용하는 예입니다.

JSON_OBJECT

JSON_OBJECT는 KEY/VALUE 쌍의 시퀀스를 인자로 받아 각 object 멤버가 포함된 JSON 객체를 반환 하는 함수입니다.

JSON_OBJECT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

entry

  • entry 절을 사용하여 KEY/VALUE 쌍을 지정

  • FORMAT JSON을 지정하여 입력 문자열이 JSON임을 나타내고, 인용되지 않은 결과를 반환

json_on_null_clause

  • expr이 null일 때 함수의 동작을 지정하는 구문

  • 지정하지 않을 경우 기본값은 NULL ON NULL

json_returning_clause

  • 함수에서 반환된 값의 데이터 형식과 포맷을 지정하는 구문

  • 지정하지 않을 경우 기본값은 VARCHAR2(65532)

  • 예제

다음은 JSON_OBJECT 함수를 사용하는 예입니다.

JSON_OBJECTAGG

JSON_OBJECTAGG는 집합 함수입니다. KEY/VALUE 쌍의 시퀀스를 인자로 받는다. 이 함수는 KEY-VALUE

쌍에 대해 object를 생성하고 단일 JSON 객체를 반환하는 함수입니다.

JSON_OBJECTAGG의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

key_expr을 통해 KEY를 value_expr을 통해 VALUE를 지정

json_on_null_clause

  • expr이 null일 때 함수의 동작을 지정하는 구문

  • 지정하지 않을 경우 기본값은 NULL ON NULL

json_returning_clause

  • 함수에서 반환된 값의 데이터 형식과 포맷을 지정하는 구문

  • 지정하지 않을 경우 기본값은 VARCHAR2(65532)

with unique keys

생성된 JSON 객체에 unique key를 보장하려면 with unique keys를 지정

  • 예제

다음은 JSON_OBJECTAGG 함수를 사용하는 예입니다.

JSON_OBJECT_KEYS

JSON_OBJECT_KEYS는 outermost JSON 객체의 key 세트를 반환하는 함수입니다.

JSON_OBJECT_KEYS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

expr에는 JSON 객체를 지정할 수 있음

  • 예제

다음은 JSON_OBJECT_KEYS 함수를 사용하는 예입니다.

JSON_QUERY

JSON_QUERY는 JSON 데이터에서 경로에 해당하는 하나 이상의 값을 선택하여 반환하는 함수입니다.

JSON_QUERY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

질의의 대상이 되는 JSON data

json_path_expression

  • 질의할 JSON 경로 표현식

  • 경로 표현식은 리터럴 값이어야 함

json_query_returning_clause

  • 함수에서 반환된 값의 데이터 형식과 포맷을 지정하는 구문

  • 지정하지 않을 경우 기본값은 VARCHAR2(65532)

  • PRETTY를 설정하면 개행 문자를 삽입하고 들여쓰기하여 반환 문자열을 이쁘게 출력

json_query_wrapper_clause

  • 경로 표현식에 일치하는 결과를 대괄호([])로 묶을지 지정하는 구문

  • 지정하지 않을 경우 기본값은 WITHOUT WRAPPER

json_query_on_error_clause

  • 오류가 발생할 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 기본값은 NULL ON ERROR

json_query_on_empty_clause

  • 일치하는 결과가 없을 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 json_query_on_error_clause 구문에 따라 반환 값을 결정

  • 예제

JSON_TABLE

JSON_TABLE은 JSON 데이터의 관계형 뷰를 생성하는 함수입니다. 이 함수는 FROM 절에서만 사용 가능 합니다.

JSON_TABLE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

질의의 대상이 되는 JSON data

json_path_expression

  • 질의할 JSON 경로 표현식

  • 경로 표현식은 리터럴 값이어야 함

json_table_on_error_clause

오류가 발생할 때 반환하는 값을 지정하는 구문

json_table_on_empty_clause

  • 일치하는 결과가 없을 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 json_table_on_error_clause 구문에 따라 반환값을 결정

json_columns_clause

COLUMNS 절을 사용하여 JSON_TABLE 함수에서 반환된 가상 관계형 테이블의 열을 정의

  • 예제

다음은 JSON_TABLE 함수를 사용하는 예입니다.

JSON_VALUE

JSON_VALUE는 JSON data에서 경로에 해당하는 scalar JSON 값을 반환하는 함수입니다.

JSON_VALUE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

질의의 대상이 되는 JSON data

json_path_expression

  • 질의할 JSON 경로 표현식

  • 경로 표현식은 리터럴 값이어야 함

json_value_return ing_clause

  • 함수에서 반환된 값의 데이터 형식과 포맷을 지정하는 구문

  • 지정하지 않을 경우 기본값은 VARCHAR2(4000)

json_value_on_er ror_clause

  • 오류가 발생할 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 기본값은 NULL ON ERROR

json_value_on_emp ty_clause

  • 일치하는 결과가 없을 때 반환하는 값을 지정하는 구문

  • 지정하지 않을 경우 json_value_on_error_clause 구문에 따라 반환 값을 결정

  • 예제

다음은 JSON_VALUE 함수를 사용하는 예입니다.

KURT

KURT는 expr의 첨도를 반환하는 함수입니다. 파라미터의 수치 데이터 타입 또는 변환된 수치 데이터 타입 을 반환합니다.

KURT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

set_quantifier

질의 결과에 중복된 로우의 허용, 비허용 여부를 지정

DISTINCT, UNIQUE, ALL을 지정할 수 있

  • DISTINCT, UNIQUE : 중복된 로우를 제거

  • ALL : 모든 로우를 선택기본값)

expr

모든 수치 데이터 타입 또는 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환할 수 있는 임의의 연산식

  • 예제

다음은 KURT 함수를 사용하는 예입니다.

LAG

LAG는 자기 자신과 조인하지 않고도 한 테이블에서 여러 개의 로우를 동시에 볼 수 있는 분석 함수입니다. LAG는 명시된 수만큼 현재 로우에서 앞서 있는 로우에 접근을 제공합니다.

LAG의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr에 LAG를 포함한 다른 분석 함수를 명시할 수 없음

  • 즉, 분석 함수를 중첩해서 사용할 수는 없음음

offset

  • 접근 횟수를 offset에 명시

  • offset을 명시하지 않으면 1로 간주됨

default

  • offset이 윈도우의 범위를 초과하면 default에서 지정한 값이 반환

  • default를 명시하지 않으면 NULL이 반환

partition_by

  • 현재 질의 블록의 결과 집합을 expr을 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

order_by_clause

  • 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 LAG 함수를 사용하는 예입니다.

LAST_DAY

LAST_DAY는 파라미터에 명시된 날짜를 포함하는 연월의 마지막 날로 변환된 날짜를 구하는 함수입니다.

LAST_DAY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

날짜 값을 반환하는 임의의 연산식

  • 예제

다음은 LAST_DAY 함수를 사용하는 예입니다.

LAST

LAST는 정렬된 로우에서 마지막에 해당하는 로우를 뽑아내어 명시된 집단함수를 적용한 결과를 반환한 다. 현재 분석 함수는 지원하지 않습니다.

LAST 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

aggregate_function

사용가능한 집단 함수는 AVG, COUNT, MIN, MAX, SUM, STADDEV 그리고 VARIANCE

expr

임의의 연산식

  • 예제

다음은 LAST 함수를 사용하는 예입니다.

LAST_VALUE

LAST_VALUE는 정렬된 로우에서 마지막 값을 반환하는 분석함수입니다. IGNORE NULLS를 명시하면

NULL이 아닌 첫 번째 값을 반환합니다. 만약 모든 값이 NULL이라면 NULL을 반환합니다.

LAST_VALUE 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

임의의 연산식

  • 예제

다음은 LAST_VALUE 함수를 사용하는 예입니다.

LEAD

LEAD는 자기 자신과 조인하지 않고도 한 테이블에서 여러 개의 로우를 동시에 볼 수 있는 분석 함수입니다. LEAD는 명시된 수만큼 현재 로우에서 뒤에 나오는 로우에 접근을 제공합니다.

LEAD의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr에 LEAD를 포함한 다른 분석 함수를 명시할 수 없음

  • 즉, 분석 함수를 중첩해서 사용할 수는 없음음

offset

  • 접근 횟수를 offset에 명시

  • offset을 명시하지 않으면 1로 간주됨

default

  • offset이 윈도우의 범위를 초과하면 default에서 지정한 값이 반환

  • default를 명시하지 않으면 NULL이 반환

partition_by

  • 현재 질의 블록의 결과 집합을 expr을 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

order_by_clause

  • 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 LEAD 함수를 사용하는 예입니다.

LEAST

LEAST는 파라미터 중 가장 작은 값을 가지는 파라미터를 구하는 함수입니다.

LEAST의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • 임의의 연산식

  • 첫 파라미터 이후의 모든 파라미터는 첫 파라미터의 타입으로 암묵적으로 변환된 후 비교

  • expr 중 하나의 값이 NULL이면 함수는 NULL을 반환

  • 예제

다음은 LEAST 함수를 사용하는 예입니다.

LENGTH

LENGTH는 주어진 파라미터의 문자열의 길이를 반환하는 함수입니다.

LENGTHB는 문자열의 길이를 문자 대신 byte 단위로 계산합니다.

LENGTHC는 문자열의 길이를 유니코드 완전한 문자로 계산합니다.

LENGTH의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 LENGTH 함수를 사용하는 예입니다.

LISTAGG

LISTAGG는 “AGGR_CONCAT”과 동일한 기능을 하는 함수입니다. Oracle과의 호환성을 위해 추가 되었습니다.

AGGR_CONCAT과는 다음과 같은 사용법에 차이가 있습니다.

  • set_quantifier 를 사용할 수 없습니다.

  • separator를 생략할 수 있고 기본값은 NULL입니다.

  • order_by_clause는 WITHIN GROUP 이후에 명시하고 생략할 수 없습니다.

LISTAGG의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

문자열이나 문자열로 변환될 수 있는 임의의 연산식

separator

expr과 접합될 구분자를 나타내는 문자 리터럴

order_by_clause

  • 접합할 문자열을 어떻게 정렬할지를 명시

  • 자세한 내용은 “4.1.3. 분석 함수”의 order_by_clause를 참고

query_partition_clause

쿼리 결과에 대해 어떻게 그룹화 할지를 명시

overflow_clause

  • 데이터의 길이가 반환 타입의 최대 길이보다 큰 경우 처리하는 방식을 정의

  • ON OVERFLOW ERROR 가 기본값으로 에러를 출력

  • ON OVERFLOW TRUNCATE 는 최대 길이 이후의 데이터를 생략

  • trunc_indicator 문자열을 정의하면 생략되기 전에 trunc_indicator 문자열이 출력됨

WITH COUNT, WITHOUT COUNT

  • WITH COUNT가 기본값으로 생략된 ROW의 수를 출력

  • WITHOUT COUNT 생략된 ROW의 수를 출력하지 않음

  • 예제

다음은 LISTAGG 함수를 사용하는 예입니다.

LN

LN은 주어진 파라미터의 자연 로그 값을 구하는 함수입니다.

LN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 수치 값을 반환하는 임의의 연산식이며, 0보다 큰 실수값을 가져야 함

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 타입을 반환

  • 예제

다음은 LN 함수를 사용하는 예입니다.

LNNVL

LNNVL은 condition의 계산 값이 FALSE이거나 UNKNOWN이면 TRUE를 반환하고, TRUE이면 FALSE를 반환하는 함수입니다. 일반적으로 사용자가 직접 이 함수를 사용할 일은 거의 없지만, 쿼리를 최적화하는 과 정에서 사용할 수 있습니다.

LNNVL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

condition

  • 임의의 조건식

  • 조건식에 관한 자세한 내용은 “조건식”을 참고

  • 예제

다음은 LNNVL 함수를 사용하는 예입니다.

LOCALTIMESTAMP

LOCALTIMESTAMP는 현재 날짜 및 시간을 출력하는 함수입니다. 이 함수의 반환값은 TIMESTAMP 타입 입니다.

LOCALTIMESTAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 LOCALTIMESTAMP 함수를 사용하는 예입니다.

LOG

LOG는 밑을 num1으로 하는 num2의 로그 값을 반환하는 함수입니다.

LOG의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1, num2

  • 0보다 큰 실수 값을 반환하는 임의의 연산식이며, num2는 0이나 1이면 안됨

  • num1이나 num2는 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • num1이나 num2의 타입이 BINARY_FLOAT이나 BINARY_DOUBLE일경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 NUMBER 타입 을 반환

  • 예제

다음은 LOG 함수를 사용하는 예입니다.

LOWER

LOWER는 문자열 str 내의 모든 영문자를 소문자로 변환하여 반환하는 함수입니다.

LOWER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 LOWER 함수를 사용하는 예입니다.

LPAD

LPAD는 expr2를 expr1의 왼쪽에 반복적으로 붙인 길이 num의 문자열을 구하는 함수입니다.

대부분의 문자 집합에서는 반환되는 문자열의 문자 수와 길이가 동일하지만, 한글과 같은 멀티 바이트 문자 집합의 경우에는 두 값이 다를 수 있습니다.

LPAD의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 문자열 또는 CLOB 타입, BLOB 타입을 반환하는 임의의 연산식

  • expr1의 길이가 num 보다 큰 경우 expr1에서 왼쪽부터 num만큼의 문자열을 반환

expr2

  • 문자열 또는 CLOB 타입, BLOB 타입을 반환하는 임의의 연산식

  • expr2가 명시되지 않은 경우 공백 문자가 사용됨

num

  • num은 수치 값을 반환하는 임의의 연산식

  • num은 터미널에 출력되는 길이를 의미

  • 예제

다음은 LPAD 함수를 사용하는 예입니다.

LTRIM

LTRIM은 문자열 str의 왼쪽으로부터 문자열 char_set 내에 포함된 모든 문자를 제거하는 함수입니다.

LTRIM의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

char_set

  • 문자열을 반환하는 임의의 연산식

  • 만약 파라미터 char_set의 값이 없으면, 기본값으로 공백 문자 하나를 가짐

  • 예제

다음은 LTRIM 함수를 사용하는 예입니다.

MAX

MAX는 그룹 내의 모든 로우에 대한 expr 값 중의 최댓값을 구하는 함수입니다. 분석 함수로도 사용할 수 있 다. 이 함수를 분석 함수로 사용할 때 DISTINCT 예약어를 명시하면 analytic_clause에서 partition_by만 명 시할 수 있습니다. order_by_clause는 명시할 수 없습니다.

MAX의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

set_quantifier

질의 결과에 중복된 로우의 허용, 비허용 여부를 지정

DISTINCT, UNIQUE, ALL을 지정할 수 있음

  • DISTINCT, UNIQUE : 중복된 로우를 제거

  • ALL : 모든 로우를 선택 (기본값)

expr

  • 임의의 연산식

  • expr 앞에 DISTINCT 예약어를 포함하면, 최댓값을 구하기 전에 expr 값 중에서 중복된 값을 먼저 제거

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 MAX 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 MAX 함수를 분석 함수로 사용하는 예입니다.

MEDIAN

MEDIAN은 파라미터로 주어진 expr의 그룹 안에서의 중간 값을 계산하는 함수입니다. 분석 함수로도 사용 할 수 있습니다. 계산을 할 때 NULL 값은 무시합니다. 계산 방법과 계산 결과는 PERCENTILE_CONT에 파라미터 값 0.5를 사용한 것과 동일합니다.

MEDIAN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 값을 반환하는 임의의 연산식

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용 은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 MEDIAN 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 MEDIAN 함수를 분석 함수로 사용하는 예입니다.

MIN

MIN은 그룹 내의 모든 로우에 대한 expr 값 중의 최솟값을 구하는 함수입니다. 분석 함수로도 사용할 수 있 다. 이 함수를 분석 함수로 사용할 때 DISTINCT 예약어를 명시하면 analytic_clause에서 partition_by만 명 시할 수 있습니다. order_by_clause는 명시할 수 없습니다.

MIN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

set_quantifier

질의 결과에 중복된 로우의 허용, 비허용 여부를 지정

DISTINCT, UNIQUE, ALL을 지정할 수 있음

  • DISTINCT, UNIQUE : 중복된 로우를 제거

  • ALL : 모든 로우를 선택 (기본값)

expr

  • 임의의 연산식

  • expr 앞에 DISTINCT 예약어를 포함하면, 최솟값을 구하기 전에 expr 값 중에서 중복된 값을 먼저 제거

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 MIN 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 MIN 함수를 분석 함수로 사용하는 예입니다.

MOD

MOD는 num1을 num2로 나눈 나머지를 반환하는 함수입니다. 이 함수는 num1 또는 num2가 음수이면 전통 적인 모듈러스(Modulus) 함수와는 다른 결과를 반환합니다.

MOD 함수는 다음과 같이 정의할 수 있습니다.

위의 수식에서 MOD1은 전통적인 모듈러스 함수이며, num1과 num2가 모두 양수이면 MOD 함수와 같은 결과를 반환합니다. 위의 SIGN 함수는 num1이 양수이면 +1, 음수이면 -1을 반환하며, ABS 함수는 num1과 num2의 절댓값을 반환합니다.

MOD의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1, num2

  • 임의의 수치 값을 반환하는 연산식

  • num1이나 num2는 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • num1이나 num2는 두 타입 중 숫자형 우선순위에 따라 더 높은 순위의 타입으로 변환되고, 또한 그 타입으로 반환됨

  • 예제

다음은 MOD 함수를 사용하는 예입니다.

MONTHS_BETWEEN

MONTHS_BETWEEN은 date1과 date2 사이의 개월 차를 구하는 함수입니다. 두 날짜 사이의 일수를 31로 나눈 값을 반환합니다.

MONTHS_BETWEEN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date1, date2

날짜를 반환하는 임의의 연산식

  • 예제

다음은 MONTHS_BETWEEN 함수를 사용하는 예입니다.

NANVL

NANVL은 num1이 NaN(Not A Number)가 아니면 num1을 반환하고, num1이 NaN이면 num2를 반환하는 함수입니다.

NANVL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1, num2

  • num1이나 num2는 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • num1이나 num2는 두 타입 중 숫자형 우선순위에 따라 더 높은 순위의 타입으로 변환되고, 그 타입으로 반환

  • 예제

다음은 NANVL 함수를 사용하는 예입니다.

NEW_TIME

NEW_TIME는 timezone1에 속해있는 date값을 timezone2에 해당하는 날짜/시간값으로 변환하여 그 결과 를 반환하는 함수입니다.

NEW_TIME의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

날짜를 반환하는 임의의 연산식

timezone1

시간대값을 반환하는 임의의 연산식으로 다음 문자열들을 사용할 수 있음

  • AST, ADT : 대서양 표준시, 대서양 일광절약시간

  • BST, BDT : 베링 표준시, 베링 일광절약시간

  • CST, CDT : 중부 표준시, 중부 일광절약시간

  • EST, EDT : 동부 표준시, 동부 일광절약시간

  • GMT : 그리니치 표준시

  • HST, HDT : 알래스카-하와이 표준시, 알래스카-하와이 일광절약시간

  • MST, MDT : 산악 표준시, 산악 일광절약시간

  • NST : 뉴펀틀랜드 표준시

  • PST, PDT : 태평양 표준시, 태평양 일광절약시간

  • YST, YDT : 유콘 표준시, 유콘 일광절약시간

timezone2

시간대 값을 반환하는 임의의 연산식으로 timezone1과 동일한 문자열들을 사용할 수 있음

  • 예제

다음은 NEW_TIME 함수를 사용하는 예입니다.

NEXT_DAY

NEXT_DAY는 date와 가장 가까운 다음 요일 str의 날짜를 반환하는 함수입니다.

NEXT_DAY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

날짜를 반환하는 임의의 연산식

str

요일을 나타내는 문자열 값

  • 예제

다음은 NEXT_DAY 함수를 사용하는 예입니다.

NLSSORT

NLSSORT는 str를 정렬하기 위해 사용되는 문자 바이트를 반환하는 함수입니다.

NLSSORT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • 정렬하기 위한 문자열 값

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

nls_param

  • str를 정렬하기 위해 사용할 문자 집합을 정의하는 파라미터

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

  • 'NLS_SORT=sort'와 같은 형식으로 정의할 수 있음

  • 정의하지 않으면 세션에 정의된 값을 사용

  • 예제

다음은 NLSSORT 함수를 사용하는 예입니다.

NLS_CHARSET_ID

NLS_CHARSET_ID는 인자로 받은 characterset name에 해당하는 characterset의 characterset id를 반환 해 주는 함수입니다.

NLS_CHARSET_ID의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • Characterset id를 반환할 characterset의 characterset name

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

  • 예제

다음은 NLS_CHARSET_ID 함수를 사용하는 예입니다.

NLS_INITCAP

NLS_INITCAP은 각 단어의 첫 글자를 대문자로, 다른 나머지 글자는 소문자로 변환하는 함수입니다.

str에는 CHAR, VARCHAR, NCHAR, NVARCHAR 형식의 문자열이 올 수 있고, 결과는 입력된 str의 문자 집합과 동일한 형식의 값이 반환됩니다. nls_param은 'NLS_SORT=sort'와 같은 형식으로 정의될 수 있으며, 정의되지 않았을 경우에는 세션에 정의된 값을 사용하게 됩니다.

NLS_INITCAP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • 변환하기 위한 문자열 값

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

  • 변환 결과는 입력된 str의 문자 집합과 동일한 형식의 값이 반환됨

nls_param

  • str를 변환하기 위해 사용할 문자 집합을 정의하는 파라미터

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음 'NLS_SORT=sort'와 같은 형식으로 정의할 수 있음

  • 정의하지 않으면 세션에 정의된 값을 사용

  • 예제

다음은 NLS_INITCAP 함수를 사용하는 예입니다.

NLS_LOWER

NLS_LOWER는 입력된 문자열을 모두 소문자로 변환하는 함수입니다.

NLS_LOWER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • 변환하기 위한 문자열 값

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

nls_param

  • str를 변환하기 위해 사용할 문자 집합을 정의하는 파라미터

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

  • 'NLS_SORT=sort'와 같은 형식으로 정의할 수 있음

  • 정의하지 않으면 세션에 정의된 값을 사용

  • 예제

다음은 NLS_LOWER 함수를 사용하는 예입니다.

NLS_UPPER

NLS_UPPER는 입력된 문자열을 모두 대문자로 변환하는 함수입니다.

NLS_UPPER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • 변환하기 위한 문자열 값

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

nls_param

  • str를 변환하기 위해 사용할 문자 집합을 정의하는 파라미터

  • CHAR, VARCHAR, NCHAR, NVARCHAR 타입의 데이터가 올 수 있음

  • 'NLS_SORT=sort'와 같은 형식으로 정의할 수 있음

  • 정의하지 않으면 세션에 정의된 값을 사용

  • 예제

다음은 NLS_UPPER 함수를 사용하는 예입니다.

NTILE

NTILE은 그룹 내의 정렬된 행을 expr개의 버킷으로 나누어 버킷의 번호를 지정해 주는 분석 함수입니다.

NTILE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr이 정수가 아니면 소수점 이하를 버린 값을 사용

  • expr에 LEAD를 포함한 다른 분석 함수를 명시할 수 없음

  • 즉, 분석 함수를 중첩해서 사용할 수는 없음

  • 예제

다음은 NTILE 함수를 사용하는 예입니다.

NULLIF

NULLIF는 만약 expr1과 expr2의 값이 동일하면 NULL을 반환하고, 그렇지 않으면 expr1 값을 반환하는 함수입니다.

NULLIF의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

임의의 연산식이며, expr1에 NULL이 올 수 없음

expr2

임의의 연산식

  • 예제

다음은 NULLIF 함수를 사용하는 예입니다.

NUMTODSINTERVAL

NUMTODSINTERVAL은 입력으로 들어온 값을 날짜-시간 구간 형식으로 변환하는 함수입니다.

NUMTODSINTERVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

변환할 입력 값

interval_unit

  • 변환의 단위를 나타내는 값

  • DAY, HOUR, MINUTE, SECOND 중 하나의 값만 올 수 있음

  • 예제

다음은 NUMTODSINTERVAL 함수를 사용하는 예입니다.

NUMTOYMINTERVAL

NUMTOYMINTERVAL은 입력으로 들어온 값을 년도-달 구간 형식으로 변환하는 함수입니다.

NUMTOYMINTERVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

변환할 입력 값

interval_unit

  • 변환의 단위를 나타내는 값

  • YEAR, MONTH 중 하나의 값만 올 수 있음

  • 예제

다음은 NUMTOYMINTERVAL 함수를 사용하는 예입니다.

NVL

NVL은 expr1이 NULL이 아니면 expr1을 반환하고, expr1이 NULL이면 expr2를 반환하는 함수입니다.

NVL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

임의의 연산식

expr2

임의의 연산식

  • 예제

다음은 NVL 함수를 사용하는 예입니다.

NVL2

NVL2는 expr1이 NULL이 아니면 expr2를 반환하고 NULL이면 expr3를 반환하는 함수입니다.

NVL2의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

임의의 연산식

expr2

  • 임의의 연산식

  • expr2의 데이터 타입에 따라 반환되는 타입이 결정됨

expr3

  • 임의의 연산식

  • expr3은 expr2의 데이터 타입으로 암묵적으로 변환됨

  • 예제

다음은 NVL2 함수를 사용하는 예입니다.

ORA_HASH

ORA_HASH는 주어진 데이터에 대해 해시값을 계산하고 그 결과를 반환하는 함수입니다.

ORA_HASH의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • 해시 값을 계산하기 위한 데이터를 나타내는 임의의 연산식

  • LONG과 LOB을 제외한 모든 타입을 사용할 수 있음

max_bucket

  • 최대 버킷 크기를 나타내는 숫자 연산식

  • 0부터 4294967295 사이의 값을 사용할 수 있음(기본값: 4294967295)

seed_value

  • 같은 데이터에 대해 해시 값의 변화를 줄 수 있는 숫자 연산식

  • 0부터 4294967295 사이의 값을 사용할 수 있음(기본값: 0)

  • 예제

다음은 ORA_HASH 함수를 사용하는 예입니다.

OVERLAPS

OVERLAPS는 두 개의 시간 간격이 서로 겹치는지의 여부를 알아보는 함수입니다. 겹칠 때는 TRUE를, 겹 치지 않을 때는 FALSE를 반환합니다. 시간 간격은 시작점과 끝점이 한 쌍으로 명시됩니다. 시작점 또는 끝점 은 DATE, TIMESTAMP 타입이 가능하며, 끝점에 대해서 추가로 INTERVAL을 명시하는 것도 가능합니다.

OVERLAPS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date1, date3

  • 시작 날짜를 나타

  • DATE 또는 TIMESTAMP 타입냄

date2, date4

  • 끝 날짜를 나타냄

  • DATE 또는 TIMESTAMP 타입

interval1, interval2

날짜의 간격을 나타내는 간격 리터럴

  • 예제

다음은 OVERLAPS 함수를 사용하는 예입니다.

PERCENT_RANK

PERCENT_RANK는 파라미터로 주어진 값의 그룹 내의 위치를 나타내 주는 함수입니다. 반환되는 값은 0

~ 1 사이의 값이고 NUMBER 타입입니다. 분석 함수로도 사용할 수 있습니다. 계산 방법은 다음과 같이 함수에 따라 달라진다.

함수
설명

집계 함수

  • 주어진 파라미터로 구성된 가상의 로우의 RANK 값을 계산하여 1을 빼고 그룹 안의 로우의 개수로 나눔

  • 파라미터의 값은 그룹 안에서는 상수 값을 가져야 하며 ORDER BY절의 표현식과 대응되어야함

분석 함수

주어진 파라미터로 구성된 가상의 로우의 RANK 값에서 1을 뺀 값을 그룹 안의 로 우의 개수에서 1을 뺀 값으로 나눔

PERCENT_RANK의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 값을 반환하는 임의의 연산식

partition_by

  • 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

order_by_clause

  • 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 PERCENT_RANK 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 PERCENT_RANK 함수를 분석 함수로 사용하는 예입니다.

PERCENTILE_CONT

PERCENTILE_CONT는 연속 분포 모델에서 파라미터로 주어진 백분위 값에 해당하는 값을 계산하는 역 분포 함수입니다. 분석 함수로도 사용할 수 있습니다. 계산을 할 때 NULL 값은 무시합니다.

파라미터의 표현식의 값은 백분위 값으로 그룹 내에서 0에서 1사이의 상수여야 합니다. ORDER BY 절의 표 현식은 보간을 계산할 수 있는 수치 또는 날짜형의 데이터 타입이어야 합니다.

PERCENTILE_CONT는 정렬 스펙에 맞게 정렬한 후 보간법에 따라 계산합니다. 이를 위해 다음과 같이 RN, CRN, FRN 값을 계산합니다.

구분
설명

P

파라미터로 주어진 백분위 값

N

그룹 내의 NULL이 아닌 로우의 개수

최종 결과는 CRN과 FRN이 같다면 RN번째 행의 expr의 값이고, 다르다면 다음과 같이 계산합니다.

PERCENTILE_CONT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 값을 반환하는 임의의 연산식

ASC

ORDER BY ASC는 결과를 오름차순으로 정렬 (기본값)

DESC

ORDER BY DESC는 결과를 내림차순으로 정렬

partition_by

  • 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

  • 예제

다음은 PERCENTILE_CONT 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 PERCENTILE_CONT 함수를 분석 함수로 사용하는 예입니다.

PERCENTILE_DISC

PERCENTILE_DISC는 이산 분포를 가정한 역분산 함수입니다. 분석 함수로도 사용할 수 있습니다. 계산을 할 때 NULL 값은 무시합니다. 파라미터의 표현식의 값은 백분위 값으로 그룹 내에서 0 ~ 1사이의 상수이어야 합니다. ORDER BY 절로 정렬을 할 수 있는 타입이어야 합니다.

PERCENTILE_DISC의 값을 계산하기 위해 다음과 같이 RN을 계산합니다. 계산된 결과 값은 CRN에 해당 하는 행의 expr 값입니다.

PERCENTILE_DISC의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 값을 반환하는 임의의 연산식

ASC

ORDER BY ASC는 결과를 오름차순으로 정렬 (기본값)

DESC

ORDER BY DESC는 결과를 내림차순으로 정렬

partition_by

  • 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

  • 예제

다음은 PERCENTILE_DISC 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 PERCENTILE_DISC 함수를 분석 함수로 사용하는 예입니다.

POWER

POWER는 num1의 num2 제곱 값(num1^(num2))을 반환하는 함수입니다.

POWER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1, num2

  • 수치 값을 반환하는 임의의 연산식

  • num1이 음수인 경우 num2는 정수이어야 함

  • num1이나 num2는 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num1이나 num2의 타입이 BINARY_FLOAT이나 BINARY_DOUBLE일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 NUMBER 타입을 반환

  • 예제

다음은 POWER 함수를 사용하는 예입니다.

QOUTED_STRING

QOUTED_STRING은 문자열 str의 값을 반환하는 함수입니다.

QOUTED_STRING의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

delimiter

  • 구분자

  • 구분자로는 출력 가능한 모든 ASCII 문자(알파벳, 숫자, 특수문자)를 사용할 수 있음

  • 이때, 만약 시작 구분자가 열린 괄호(<, (, {, [)일 경우 종료 구분자 는 이에 대응되는 닫힌 괄호(>, ), }, ])여야 함

  • 종료 구분자를 입력하지 않은 경 우 오류 메시지가 출력

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 QUOTED_STRING 함수를 사용하는 예입니다.

RANK

RANK는 그룹별로 로우를 정렬한 후 그룹 내의 각 로우의 순위를 반환하는 함수입니다. 분석 함수로도 사용 할 수 있습니다.

순위의 데이터 타입은 NUMBER입니다. 순위를 산정할 때 동률이 나타났을 경우는 동률인 모든 로우에 대해 같은 순위가 부여됩니다. 그 다음 부여되는 순위는 같은 순위가 부여된 로우의 개수만큼 증가된 값이 부여된 다. 따라서 순위는 연속된 숫자가 아닐 수도 있습니다.

계산 방법은 다음과 같이 함수에 따라 달라집니다.

함수
설명

집계 함수

  • 파라미터 값으로 구성된 가상의 로우에 대한 순위 값을 계산

  • 파라미터는 각 그룹마다 상수 값을 가져야 하며 order_by_clause의 표현식과 대응되어야 함

분석 함수

  • 각 로우의 그룹 내 순위를 반환

  • 순위는 order_by_clause 내의 expr 값을 기준으로 정렬한 결과가 부여됨

RANK의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 값을 반환하는 임의의 연산식

ASC

ORDER BY ASC는 결과를 오름차순으로 정렬 (기본값)

DESC

ORDER BY DESC는 결과를 내림차순으로 정렬

partition_by

  • 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

  • 예제

다음은 RANK 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 RANK 함수를 분석 함수로 사용하는 예입니다.

REGR_SLOPE

REGR_SLOPE는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합함수와 분석함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외됩니다. 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다.

REGR_SLOPE는 다음의 계산식으로 회귀 직선(Regression Line)의 기울기를 계산해서 결과를 반환합니다.

이때 VAR_POP의 결과가 0이면 최종 결과는 NULL이 됩니다.

REGR_SLOPE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_INTERCEPT

REGR_INTERCEPT는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하기 위해 사용되는 함수, 집합 함수와 분석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다.

REGR_INTERCEPT는 다음의 계산식으로 회귀 직선의 Y 절편을 계산해서 결과를 반환합니다.

이때 REGR_SLOPE의 결과가 NULL이면 최종 결과는 NULL이 됩니다.

REGR_INTERCEPT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_COUNT

REGR_COUNT는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합 함수와 분석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 0을 결과로 낸 다. REGR_COUNT는 회귀 직선을 구성하는데 사용된 NULL이 아닌 (expr1, expr2) 쌍의 계수를 반환합니다.

REGR_COUNT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_R2

REGR_R2는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합 함수와 분석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다.

REGR_R2는 회귀에 대한 결정 계수(R-squared 또는 적합도)를 계산하는 함수로 VAR_POP(expr1)과 VAR_POP(expr2)의 값에 따라 아래와 같은 계산식을 이용합니다.

  • VAR_POP(expr2) = 0이면 : NULL

  • VAR_POP(expr1) = 0이고 VAR_POP(expr2) > 0이면 : 1

  • VAR_POP(expr1) > 0이고 VAR_POP(expr2) > 0이면 : POWER(CORR(expr1, expr2),2)

REGR_R2의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_AVGX

REGR_AVGX는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합 함수와 분석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다. REGR_AVGX는 독립변수(expr2)의 평균을 계산합니다. 즉, NULL의 쌍을 제거한 후에 "AVG(expr2)"를 계산합니다.

REGR_AVGX의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_AVGY

REGR_AVGY는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합 함수와 분석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다. REGR_AVGY는 종속변수(expr1)의 평균을 계산합니다. 즉, NULL의 쌍을 제거한 후에 "AVG(expr1)"를 계산합니다.

REGR_AVGY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식입

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_SXX

REGR_SXX는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합 함수와 분 석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다.

REGR_SXX는 다음의 계산식으로 회귀 분석을 위한 진단 통계를 계산하는데 사용하는 보조 함수입니다.

REGR_SXX의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_SYY

REGR_SYY는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합 함수와 분 석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다.

REGR_SYY는 회귀 분석을 위한 진단 통계를 계산하는데 사용하는 보조 함수입니다. 계산식은 다음과 같습니다.

REGR_SYY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

REGR_SXY

REGR_SXY는 임의의 수치 데이터 쌍의 집합에 가장 맞는 선형 방정식을 구하는 함수로, 집합 함수와 분 석 함수로 사용됩니다.

입력으로 숫자 데이터 또는 숫자 데이터로 변환 가능한 데이터형을 갖습니다. 인자로 받은 종속변수(expr1) 또는 독립변수(expr2)의 값이 NULL이면 계산에서 제외되며 모든 로우가 NULL의 쌍이면 NULL을 결과로 낸다.

REGR_SXY는 회귀 분석을 위한 진단 통계를 계산하는데 사용하는 보조 함수입니다. 계산식은 다음과 같습니다.

REGR_SXY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 수치 값을 반환하는 임의의 연산식

  • 종속변수에 해당

expr2

  • 수치 값을 반환하는 임의의 연산식

  • 독립변수에 해당

  • 예제

다음은 함수를 사용하는 예입니다.

RATIO_TO_REPORT

RATIO_TO_REPORT는 값의 집합의 합에 대한 집합 하나의 값의 비율을 계산하는 분석 함수입니다. 이 함 수는 expr 값이 NULL이면 반환값 역시 NULL입니다.

값의 집합은 partition_by에 의해 결정됩니다. partition_by의 값을 명시하지 않으면 질의 결과로 반환된 모든 행을 대상으로 계산을 실행합니다.

RATIO_TO_REPORT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr은 수치 값을 반환하는 임의의 연산식

  • expr에 RATIO_TO_REPORT 함수를 포함한 다른 분석 함수를 명시할 수 없음

  • 즉, 분석 함수를 중첩할 수 없음

  • 그러나 다른 내장 함수는 expr에 명시할 수 있음

partition_by

  • 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

  • 예제

다음은 RATIO_TO_REPORT 함수를 사용하는 예입니다.

RAWTOHEX

RAWTOHEX는 문자열 raw 값을 16진수로 표현된 VARCHAR2 타입의 문자열로 바꾸는 함수입니다.

RAWTOHEX의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

raw

  • 문자열 값을 반환하는 임의의 연산식

  • 단, CLOB, BLOB, LONG, LONG RAW, XMLTYPE, GEOMETRY 등의 타입은 사용할 수 없음

  • 예제

다음은 RAWTOHEX 함수를 사용하는 예입니다.

REGEXP_COUNT

REGEXP_COUNT는 입력 문자열 내에서 정규 표현식으로 주어진 패턴이 몇 번이나 일치하는지 반환하는 함수입니다.(이 기능은 ICU 정규 표현식 표준을 따른다).

REGEXP_COUNT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

source_str

  • 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, NCLOB 타입을 사용할 수 있음

pattern

  • 정규 표현식으로 작성된 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2 타입을 사용할 수 있고, 만약 source_str과 타입이 다를 경우 source_str 타입으로 변환됨

position

숫자값을 반환하는 임의의 연산식으로 패턴검사를 시작할 위치를 지정 (기본값: 1)

match_param

문자열을 반환하는 임의의 연산식으로 패턴을 검사할 방법을 설정

다음과 같은 값을 사용할 수 있고, 여러 개를 동시에 지정할 수 있음

  • 'i' : 대소문자를 구분하지 않음

  • 'c' : 대소문자를 구분

  • 'n' : 점(.)이 줄바꿈 문자도 포함

  • 'm' : 입력문자열이 한줄 이상

  • 'x' : pattern의 공백문자를 무시

예를 들어 'ic'와 같이 상호충돌하는 값을 지정하였을 경우엔 마지막 값만 사용

즉, 'ic'는 대소문자를 구분

  • 예제

다음은 REGEXP_COUNT 함수를 사용하는 예입니다.

REGEXP_INSTR

REGEXP_INSTR는 입력 문자열 내에서 정규 표현식으로 주어진 패턴이 일치하는지 위치를 반환하는 함 수입니다. 만약 입력 문자열과 일치하지 않으면 0을 반환합니다(이 기능은 ICU 정규 표현식 표준을 따른다).

REGEXP_INSTR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

sou (source_str)

  • 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, NCLOB 타입을 사용할 수 있음

pat (pattern)

  • 정규 표현식으로 작성된 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2 타입을 사용할 수 있고, 만약 source_str과 타입이 다를 경우 source_str 타입으로 변환됨

pos (position)

숫자값을 반환하는 임의의 연산식으로 패턴검사를 시작할 위치를 지정(기본값: 1)

occ (occurrence)

숫자값을 반환하는 임의의 연산식으로 패턴을 몇 번 검사할지를 지정 (기본값: 1)

ret (return_option)

숫자값을 반환하는 임의의 연산식

  • 0 : 패턴과 일치하는 문자열의 처음 위치를 반환(기본값)

  • 1 : 패턴과 일치하는 문자열 다음 문자열 위치를 반환

mat (match_param)

  • 문자열을 반환하는 임의의 연산식으로 패턴을 어떤 방법으로 검사할지를 지정

  • REGEXP_COUNT 함수와 같은 특성을 가짐

sub (sub_expr)

  • 숫자값을 반환하는 임의의 연산식으로 0부터 9까지 사용할 수 있음(기본값: 0)

  • sub_expr은 pattern에서 괄호로 감싸진 각 그룹들을 왼쪽부터 순서대로 지정

  • 예를 들어 다음과 같은 정규표현식이 주어졌을 때 모두 4개의 그룹이 존재

  • \n(tibero(is(a)(rdbms)))\n왼쪽부터 "tiberoisardbms", "isardbms", "a", "rdbms"이며 각 1, 2, 3, 4에 해당

  • 예제

다음은 REGEXP_INSTR 함수를 사용하는 예입니다.

REGEXP_REPLACE

REGEXP_REPLACE는 입력 문자열내에서 정규 표현식으로 주어진 패턴을 탐색하여 다른 문자열로 대 치하는 함수입니다(이 기능은 ICU 정규 표현식 표준을 따른다). 결과 타입은 첫 번째 인자의 타입과 동일하 다.

REGEXP_REPLACE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

sou (source_str)

  • 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, NCLOB 타입을 사용할 수 있음

pat (pattern)

  • 정규 표현식으로 작성된 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2 타입을 사용할 수 있고, 만약 source_str과 타입이 다를 경우 source_str 타입으로 변환됨

rep (replace_str)

  • 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2 타입을 사용할 수 있고, 만약 source_str과 타입이 다를 경우 source_str 타입으로 변환됨

pos (position)

숫자값을 반환하는 임의의 연산식으로 패턴검사를 시작할 위치를 지정(기본값: 1)

occ (occurrence)

숫자값을 반환하는 임의의 연산식으로 패턴을 몇 번 검사할지를 지정(기본값: 1)

mat (match_param)

  • 문자열을 반환하는 임의의 연산식으로 패턴을 어떤 방법으로 검사할지를 지정

  • REGEXP_COUNT 함수와 같은 특성을 가짐

  • 예제

다음은 REGEXP_REPLACE 함수를 사용하는 예입니다.

REGEXP_SUBSTR

REGEXP_SUBSTR는 입력 문자열내에서 정규 표현식으로 주어진 패턴을 탐색하여 해당 문자열을 반환 하는 함수입니다(이 기능은 ICU 정규 표현식 표준을 따른다). 결과 타입은 첫 번째 인자의 타입과 동일합니다.

REGEXP_SUBSTR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

sou

문자열을 반환하는 임의의 연산식

(source_str)

CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, NCLOB 타입을 사용할 수 있음

pat (pattern)

  • 정규 표현식으로 작성된 문자열을 반환하는 임의의 연산식

  • CHAR, VARCHAR2, NCHAR, NVARCHAR2 타입을 사용할 수 있고, 만약 source_str과 타입이 다를 경우 source_str 타입으로 변환

pos (position)

숫자값을 반환하는 임의의 연산식으로 패턴검사를 시작할 위치를 지정 (기본값: 1)

occ (occurrence)

숫자값을 반환하는 임의의 연산식으로 패턴을 몇 번 검사할지를 지정 (기본값: 1)

mat (match_param)

  • 문자열을 반환하는 임의의 연산식으로 패턴을 어떤 방법으로 검사할지를 지정

  • REGEXP_COUNT 함수와 같은 특성을 가짐

sub (sub_expr)

  • 숫자값을 반환하는 임의의 연산식으로 0부터 9까지 사용할 수 있음(기본값: 0)R

  • EGEXP_INSTR 함수와 같은 특성을 가짐

sou

문자열을 반환하는 임의의 연산식

  • 예제

다음은 REGEXP_SUBSTR 함수를 사용하는 예입니다.

REMAINDER

REMAINDER은 num1을 num2로 나눈 나머지를 반환하는 함수입니다.

REMAINDER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1, num2

  • num1이나 num2는 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어함야

  • num1이나 num2은 두 타입 중 숫자형 우선순위에 따라 더 높은 순위의 타입으로 변환되고, 또한 그 타입으로 반환됨

  • 예제

다음은 REMAINDER 함수를 사용하는 예입니다.

REPLACE

REPLACE는 문자열 str 내에서 문자열 substr을 탐색하여 문자열 replace_str로 치환하는 함수입니다.

REPLACE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

substr

  • 문자열을 반환하는 임의의 연산식

  • 만약 substr이 NULL이면 str을 그대로 반환

replace_str

  • 문자열을 반환하는 임의의 연산식

  • 만약 replace_str이 NULL이거나 지정되지 않으면, str 내의 모든 substr은 제거됨

  • 예제

다음은 REPLACE 함수를 사용하는 예입니다.

REVERSE

REVERSE는 주어진 문자열을 거꾸로 출력하는 함수입니다.

REVERSE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 REVERSE 함수를 사용하는 예입니다.

ROUND(number)

ROUND(number)는 num1을 소수점 아래 num2+1 위치에서 반올림한 값을 반환하는 함수입니다.

ROUND(number)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1

수치 값을 반환하는 임의의 연산식

num2

  • 수치 값을 반환하는 임의의 연산식

  • num2는 정수가 되어야 함

  • 만약 num2가 지정되지 않았거나 0이면 소수점 첫째 자리에서 반올림

  • num2가 음수이면 소수점 위의 자리에서 반올림

  • 예제

다음은 ROUND(number) 함수를 사용하는 예입니다.

ROUND(date)

ROUND(date)는 date를 format에 명시된 단위로 반올림한 결과를 반환하는 함수입니다.

ROUND(date)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

날짜를 반환하는 임의의 연산식

format

  • 반환할 단위를 명시하는 포맷 문자열을 나타내는 문자열

  • format이 명시되지 않으면 'DD' 형식의 문자열을 이용하여 가장 가까운 날로 반올림

  • format으로 'YEAR', 'MONTH', 'DAY' 등을 사용할 수 있음

  • ROUND함수의 format에 명시할 수 있는 형식 문자열은 다음과 같음

  • CC, SCC : 연 수치 중 에서 2자리로 반올림/내림할 때 그 날짜.(예: xx01년)

  • IYY, IYYY, IY, I : ISO year 값에 대해 7월 1일 전/후로 반올림 또는 버림을 함

  • SYYYY, YYYY, YYY, YY, Y, YEAR, SYEAR : year 값에 대해 7월 1일 전/후로 반올림 또는 버림을 함

  • Q : quarter 값에 대해 각 quarter의 두 번째 달의 16일부터 전/후로 반올림 또는 버림을 함

  • MONTH, MON, MM, RM : month 값에 대해 16일부터 전/후로 반올림 또는 버림을 함

  • WW : 그 해의 첫 번째 날짜(1월 1일)를 한 주의 시작으로 해서, week 값에 대해 반올림 또는 버림을 함

  • IW : 그 주의 월요일을 한 주의 시작으로 해서, week 값에 대해 반올림 또는 버림을 함

  • W : 그 달의 첫 번째 날짜(1일)과 같은 요일이 되도록 week 값에 대해 반올림 또는 버림을 함

  • DDD, DD, J : day 값에 대해 오후 12시 전/후로 반올림 또는 버림을 함

  • DAY, DY, D : week 값에 대해 수요일 오후 12시 전/후로 반올림 또는 버림 을 함

  • HH24, HH12, HH : hour 값에 대해 30분 전/후로 반올림 또는 버림을 함

  • MI : minute 값에 대해 30초 전/후로 반올림 또는 버림을 함

  • 예제

다음은 ROUND(date) 함수를 사용하는 예입니다.

ROWIDTOCHAR

ROWIDTOCHAR는 ROWID의 값을 VARCHAR 타입의 값으로 변환하는 함수입니다.

ROWIDTOCHAR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

rowid

VARCHAR 타입으로 변환할 값

  • 예제

다음은 ROWIDTOCHAR 함수를 사용하는 예입니다.

ROW_NUMBER

ROW_NUMBER는 함수가 적용된 모든 로우(파티션의 모든 로우 또는 질의에 의해 반환되는 모든 로우) 에 대하여 order_by_clause에 명시된 순서대로 1부터 시작되는 유일한 번호를 부여하는 분석 함수입니다.

ROW_NUMBER 함수를 사용하여 top-N, bottom-N, inner-N 보고를 구현할 수 있습니다. 일관된 결과를 얻기 위해서는 질의는 결정된 정렬 순서를 보장하여야 합니다.

ROW_NUMBER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

partition_by

  • 현재 질의 블록의 결과 집합을 expr 또는 expr의 리스트를 기준으로 분할

  • 자세한 내용은 “분석 함수”의 partition_by를 참고

order_by_clause

  • 분할된 하나의 파티션 내에서 로우를 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 ROW_NUMBER 함수를 사용하는 예입니다.

RPAD

RPAD는 expr2를 expr1의 오른쪽에 반복적으로 붙인 길이가 num인 문자열을 구하는 함수입니다.

대부분의 문자 집합에서는 반환되는 문자열의 문자의 수와 길이가 동일하지만, 한글과 같은 멀티 바이트 문자 집합의 경우에는 두 값이 다를 수 있습니다.

RPAD의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr1

  • 문자열 또는 CLOB 타입, BLOB 타입을 반환하는 임의의 연산식

  • expr1의 길이가 num 보다 크면, expr1에서 왼쪽부터 num만큼의 문자열을 반환

expr2

  • 문자열 또는 CLOB 타입, BLOB 타입을 반환하는 임의의 연산식

  • .expr2가 명시되지 않으면 공백 문자가 사용됨

num

  • 수치 값을 반환하는 임의의 연산식

  • num은 터미널에 출력되는 길이를 의미

  • 예제

다음은 RPAD 함수를 사용하는 예입니다.

RTRIM

RTRIM은 문자열 str의 오른쪽으로부터 문자열 char_set 내에 포함된 모든 문자를 제거하는 함수입니다.

RTRIM의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

char_set

  • 문자열을 반환하는 임의의 연산식

  • 만약 파라미터 char_set의 값이 없으면, 디폴트 값으로 공백 문자 하나를 가짐

  • 예제

다음은 RTRIM 함수를 사용하는 예입니다.

SESSIONTIMEZONE

SESSIONTIMEZONE는 현재 세션의 시간대를 출력하는 함수입니다.

SESSIONTIMEZONE의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 SESSIONTIMEZONE 함수를 사용하는 예입니다.

SIGN

SIGN은 num이 음수이면 -1을 반환하고, 0이면 0을 양수이면 +1을 반환하는 함수입니다.

SIGN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 수치 값을 반환하는 임의의 연산식

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 하고, 반환 타입은 NUMBER

num이 NUMBER 타입인 경우 반환값

  • 0보다 작은 경우 : -1

  • 0인 경우 : 0

  • 0보다 큰 경우 : 1

num이 BINARY_FLOAT이거나 BINARY_DOUBLE 타입인 경우 반환값

  • 0보다 작은 경우 : -1

  • 0보다 같거나 큰 경우 또는 NaN(Not A Number)인 경우 : 1

  • 예제

다음은 SIGN 함수를 사용하는 예입니다.

SIN

SIN은 주어진 파라미터 값의 사인(sine) 값을 구합니다.

SIN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 실수 값을 반환하는 임의의 연산식(단위: 라디안)

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 숫자형 타입을 반환

  • 예제

다음은 SIN 함수를 사용하는 예입니다.

SINH

SINH은 주어진 파라미터 값의 하이퍼볼릭 사인 값을 구하는 함수입니다.

SINH의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 실수 값을 반환하는 임의의 연산식(단위: 라디안)

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 숫자형 타입을 반환

  • 예제

다음은 SINH 함수를 사용하는 예입니다.

SKEW

SKEW는 expr의 왜도를 반환하는 함수입니다. 이 함수는 모든 수치 데이터 타입과 수치 데이터 타입은 아니 지만 묵시적으로 수치 데이터 타입으로 변환할 수 있는 데이터 타입을 파라미터로 받아 들인다. 입력된 파 라미터의 수치 데이터 타입 또는 변환된 수치 데이터 타입을 반환합니다.

SKEW의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

set_quantifier

질의 결과에 중복된 로우의 허용, 비허용 여부를 지정

DISTINCT, UNIQUE, ALL을 지정할 수 있습니다

  • DISTINCT, UNIQUE : 중복된 로우를 제거

  • ALL : 모든 로우를 선택(기본값)

expr

측정할 연산식을 명시

  • 예제

다음은 SKEW 함수를 사용하는 예입니다.

SQRT

SQRT는 주어진 파라미터 값의 제곱근(Square Root)을 구하는 함수입니다.

SQRT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 하고, num과 동일한 타입을 반환

  • num이 NUMBER 타입인 경우 num은 음수가 될 수 없

num이 BINARY_FLOAT이거나 BINARY_DOUBLE 타입인 경우 반환값

  • num이 0보다 크거나 같은 경우 양의 실수

  • num이 0보다 작은 경우 NaN(Not A Number)

  • 예제

다음은 SQRT 함수를 사용하는 예입니다.

STATS_MODE

STATS_MODE는 expr의 최빈값을 반환하는 함수입니다. 만약 최빈값이 여러 개이면 그 중 한 개의 값을 반 환합니다. NULL은 최빈값이 될 수 없으나 모든 값이 NULL이면 NULL을 반환합니다.

STATS_MODE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 값을 반환하는 임의의 연산식

  • 예제

다음은 STATS_MODE 함수를 사용하는 예입니다.

STDDEV

STDDEV는 expr의 표본 표준편차를 반환하는 함수입니다. 분석 함수로도 사용할 수 있습니다. Tibero는 표준편 차의 값을 VARIANCE 집합 함수 값의 제곱근으로 계산합니다.

이 함수는 모든 수치 데이터 타입과 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환 할 수 있는 데이터 타입을 파라미터로 받아 들인다. 입력된 파라미터의 수치 데이터 타입 또는 변환된 수 치 데이터 타입을 반환합니다.

STDDEV_SAMP 함수와 STDDEV 함수의 차이점은 입력 데이터의 크기가 단 하나의 로우일 경우 STDDEV 함수는 0을 반환하는 반면 STDDEV_SAMP 함수는 NULL 값을 반환한다는 것입니다.

STDDEV의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 값을 반환하는 임의의 연산식

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용 은 “분석 함수”의 analytic_clause를 참고합니다.

  • 예제

다음은 STDDEV 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 STDDEV 함수를 분석 함수로 사용하는 예입니다.

STDDEV_POP

STDDEV_POP는 expr의 모표준편차를 반환하는 함수입니다. 분석 함수로도 사용할 수 있습니다. Tibero는 모표 준편차의 값을 VARIANCE_POP 집합 함수 값의 제곱근으로 계산합니다. 이 함수는 파라미터의 수치 데이 터 타입 또는 변환된 수치 데이터 타입을 반환합니다.

STDDEV_POP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 데이터 타입 또는 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환할 수 있는 데이터 타입을 갖는 임의의 연산식

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용 은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 STDDEV_POP 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 STDDEV_POP 함수를 분석 함수로 사용하는 예입니다.

STDDEV_SAMP

STDDEV_SAMP는 expr의 누적 표본 표준편차를 반환하는 함수입니다. 분석 함수로도 사용할 수 있습니다. Tibero 는 누적 표본 표준편차의 값을 VARIANCE_SAMP 집합 함수 값의 제곱근으로 계산합니다. 이 함수는 파라 미터의 수치 데이터 타입 또는 변환된 수치 데이터 타입을 반환합니다.

STDDEV_SAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 데이터 타입 또는 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타 입으로 변환할 수 있는 데이터 타입을 갖는 임의의 연산식

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용 은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 STDDEV_SAMP 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 STDDEV_SAMP 함수를 분석 함수로 사용하는 예입니다.

SUBSTR

SUBSTR은 문자열 str 내의 position 위치로부터 length 길이의 문자열을 추출하여 반환하는 함수입니다. 추 가로 SUBSTRB 함수는 SUBSTR 함수와 동일하지만, 위치를 계산할 때 문자가 아닌 byte를 단위로 사용 합니다.

SUBSTR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • 문자열을 반환하는 임의의 연산식

  • 문자열 내의 문자의 위치는 1부터 시작됨

position

  • 정수 값을 반환하는 임의의 연산식

  • 문자열 내의 문자의 위치는 1부터 시작됨

  • 만약 position이 0이면 1로 처리하고, position이 0보다 작으면 문자열 str의 뒤에서부터 추출함

length

  • 정수 값을 반환하는 임의의 연산식

  • 문자열 내의 문자의 위치는 1부터 시작됨

  • 만약 length가 지정되지 않으면 str의 position 위치에서부터 마지막까지 문자열을 추출하며, length가 1보다 작으면 NULL을 반환

  • 예제

다음은 SUBSTR 함수를 사용하는 예입니다.

SUM

SUM은 그룹 내의 모든 로우에 대한 expr 값의 합계를 구하는 함수입니다. 분석 함수로도 사용할 수 있습니다.

이 함수를 분석 함수로 사용할 때 DISTINCT 예약어를 명시하면 analytic_clause에서 partition_by만 명시 할 수 있습니다. order_by_clause는 명시할 수 없습니다.

SUM의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

set_quantifier

질의 결과에 중복된 로우의 허용, 비허용 여부를 지정

DISTINCT, UNIQUE, ALL을 지정할 수 있음

  • DISTINCT, UNIQUE : 중복된 로우를 제거

  • ALL : 모든 로우를 선택(기본값)

expr

  • 임의의 연산식

  • expr 앞에 DISTINCT 예약어를 포함하면, 합계를 구하기 전에 expr 값 중에서 중복된 것을 먼저 제거

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 SUM 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 SUM 함수를 분석 함수로 사용하는 예입니다.

SYS_CONNECT_BY_PATH

SYS_CONNECT_BY_PATH는 루트(Root)에서 노드(Node)까지의 컬럼 값의 경로(Path)를 반환하는 함수 입니다. 이 함수는 계층 질의에 대해서만 유효합니다. 반환된 경로에서 컬럼 값은 char에 의해 분리됩니다.

SYS_CONNECT_BY_PATH의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr, char

  • expr, char 모두 CHAR, VARCHAR2, NCHAR, NVARCHAR2 중에서 어느 타입이어도 됨

  • 반환된 문자열은 VARCHAR2 타입이며, 컬럼과 같은 문자 집합

  • 예제

다음은 SYS_CONNECT_BY_PATH 함수를 사용하는 예입니다.

SYS_CONTEXT

SYS_CONTEXT는 문맥 네임스페이스(CONTEXT NAMESPACE)와 관련된 파라미터의 값을 반환하는 함수입니다. 문맥 네임스페이스와 파라미터는 문자열이나 표현식으로 정의할 수 있으며, 함수의 반환값은 VARCHAR 타입입니다.

Tibero에서 디폴트로 제공하고 있는 문맥 네임스페이스는 USERENV입니다.

  • USERENV 파라미터

파라미터
설명

CLIENT_IDENTIFIER

DBMS_SESSION.SET_IDENTIFIER 프러시저에 의해 정의된 클라이언트 식별자를 반환

CURRENT_SCHEMA

  • 현재 활성화된 스키마 이름을 반환

  • 이 값은 ALTER SESSION SET CURRENT_SCHEMA 구문에 의해 변경될 수 있음

CURRENT_SCHEMAID

현재 활성화된 스키마 식별번호를 반환

CURRENT_SQL

현재 수행 중인 SQL 문장을 반환

DB_NAME

DB_NAME 초기화 파라미터에 의해 정의된 데이터베이스의 이름을 반환

HOST

클라이언트가 실행 중인 장비의 이름을 반환

INSTANCE_NAME

현재 인스턴스의 이름을 반환

INSTANCE

현재 인스턴스의 식별번호를 반환

IP_ADDR[ESS]

클라이언트의 IP 주소를 반환

LANG

'LANGUAGE' 파라미터의 약어를 반환

LANGUAGE

현재 세션의 지역, 언어, 데이터베이스의 문자집합 이름을 언어_지역.문 집합 형식으로 반환

MODULE

DBMS_APPLICATION_INFO.SET_MODULE 프러시저에 의해 정의된 모듈 이름을 반환

NETWORK_PROTOCOL

양방향 통신을 위한 네트워크 프로토콜의 이름을 반환

OS_USER

클라이언트 프로세스의 OS 사용자 이름을 반환

SCHEMA

클라이언트의 접속 스키마 이름을 반환

SCHEMAID

클라이언트의 접속 사용자 식별번호를 반환

SERVER_ADDRESS

  • 현재 인스턴스가 실행 중인 장비의 IP 주소를 반환

  • OS에서 관리 중인 IP 주소 리스트의 첫번째 값을 반환하기 때문에, 네트워크 환경 구 성이 변경됨에 따라 값이 변화할 수 있음

  • 값을 고정하고 싶은 경우 LIS TENER_IP를 설정해주어야 함

SERVER_HOST

현재 인스턴스가 실행 중인 장비의 이름을 반환

SESSION_USER

클라이언트의 접속 사용자 이름을 반환

SESSIONID

세션 감시 식별번호를 반환

TERMINAL

클라이언트의 OS 식별자를 반환

TID, SID

현재 세션 식별번호를 반환

사용자 지정 문맥 네임스페이스는 CREATE CONTEXT DDL 구문을 사용하여 생성할 수 있습니다. 또한 이 SYS_CONTEXT 가 해당 네임스페이스의 각 파라미터에 따라 반환할 값은 DBMS_SESSION.SET_CON TEXT 프러시저를 통해 설정할 수 있습니다.

SYS_CONTEXT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

namespace

문맥 네임스페이스를 정의하는 값

param

문맥 네임스페이스와 관련된 파라미터 이름

  • 예제

다음은 SYS_CONTEXT 함수를 사용하는 예입니다.

다음은 지정된 패키지를 통해 ctx0 네임스페이스의 attr0 파라미터 값이 설정되었을 경우 그 값을 SYS_CONTEXT 함수를 통해 출력하는 예입니다.

SYS_EXTRACT_UTC

SYS_EXTRACT_UTC는 시간대 정보를 포함하는 시간값을 UTC (Coordinated Universal Time) 시간대로 변환하여 반환하는 함수입니다.

SYS_EXTRACT_UTC의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

datetime_with_timezone

시간대 정보를 포함한 시간값을 반환하는 임의의 연산식

  • 예제

다음은 SYS_EXTRACT_UTC 함수를 사용하는 예입니다.

SYS_GUID

SYS_GUID는 시스템 전체에서 유일한 값을 반환하는 함수입니다. 반환값은 16bytes이고 스레드 번호, 호스 트 이름, 접속 시간, 시퀀스 번호등의 조합으로 이루어진 RAW 타입의 값입니다.

SYS_GUID의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 SYS_GUID 함수를 사용하는 예입니다.

SYSDATE

SYSDATE는 현재의 날짜와 시간을 반환하는 함수입니다. 이 함수는 파라미터가 없으며, 괄호가 따라오지 않습니다. 이 함수의 반환값은 DATE 타입입니다.

SYSDATE의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 SYSDATE 함수를 사용하는 예입니다.

SYSTIME

SYSTIME은 현재 시간을 반환하는 함수입니다. 이 함수는 파라미터가 없으며, 괄호가 따라 오지 않습니다. 이 함수의 반환값은 TIME 타입입니다.

SYSTIME의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 SYSTIME 함수를 사용하는 예입니다.

SYSTIMESTAMP

SYSTIMESTAMP는 현재의 날짜와 시간 및 시간대를 반환하는 함수입니다. 이 함수의 반환값은 TIMESTAMP WITH TIME ZONE 타입입니다.

SYSTIMESTAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 SYSTIMESTAMP 함수를 사용하는 예입니다.

TAN

TAN는 주어진 파라미터의 탄젠트(Tangent) 값을 구하는 함수입니다.

TAN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 실수 값을 반환하는 임의의 연산식(단위: 라디안)

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 숫자형 타입을 반환

  • 예제

다음은 TAN 함수를 사용하는 예입니다.

TANH

TANH는 주어진 파라미터의 하이퍼볼릭 탄젠트 값을 구하는 함수입니다.

TANH의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

  • 실수 값을 반환하는 임의의 연산식 (단위: 라디안)

  • num은 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • 만약 num의 타입이 BINARY_FLOAT일 경우엔 BINARY_DOUBLE 타입을 반환하고, 그렇지 않은 경우엔 num과 동일한 숫자형 타입을 반환

  • 예제

다음은 TANH 함수를 사용하는 예입니다.

TIMESTAMP_TO_TSN

TIMESTAMP_TO_TSN은 주어진 시간값과 가장 근접한 TSN값을 반환하는 함수입니다.

TIMESTAMP_TO_TSN의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

timestamp

시간 값을 반환하는 임의의 연산식

  • 예제

다음은 TIMESTAMP_TO_TSN 함수를 사용하는 예입니다.

TO_BINARY_DOUBLE

TO_BINARY_DOUBLE은 연산식 expr을 format에 따라 BINARY_DOUBLE 타입의 값으로 변환하여 반환 하는 함수입니다.

TO_BINARY_DOUBLE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

문자열이나 수치값을 반환하는 임의의 연산식

다음과 같은 특수한 문자열 값을 지원하고, 대소문자는 구분하지 않음

  • 'INF'는 양의 무한대로 변환

  • '-INF'는 음의 무한대로 변환

  • 'NaN'은 NaN(Not A Number)로 변환

부동 소수점 타입을 나타내는 접미사 f, F, d, D는 사용할 수 없음

format

  • 숫자형 타입의 형식 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

  • format은 expr이 문자열인 경우에만 유효

  • 예제

다음은 TO_BINARY_DOUBLE 함수를 사용하는 예입니다.

TO_BINARY_FLOAT

TO_BINARY_FLOAT는 연산식 expr을 format에 따라 BINARY_FLOAT 타입의 값으로 변환하여 반환하 는 함수입니다.

TO_BINARY_FLOAT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

문자열이나 수치값을 반환하는 임의의 연산식

다음과 같은 특수한 문자열 값을 지원하고, 대소문자는 구분하지 않음

  • 'INF'는 양의 무한대로 변환

  • '-INF'는 음의 무한대로 변환

  • 'NaN'은 NaN(Not A Number)로 변환

부동 소수점 타입을 나타내는 접미사 f, F, d, D는 사용할 수 없습니다.

format

  • 숫자형 타입의 형식 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

  • format은 expr이 문자열인 경우에만 유효

  • 예제

다음은 TO_BINARY_FLOAT 함수를 사용하는 예입니다.

TO_BLOB

TO_BLOB은 파라미터로 주어진 raw를 BLOB 타입으로 변환하는 함수입니다.

TO_BLOB의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

raw_value

RAW type을 반환하는 임의의 연산식

  • 예제

다음은 TO_BLOB 함수를 사용하는 예입니다.

TO_CHAR(character)

TO_CHAR(character)는 CLOB 타입의 데이터를 데이터베이스 문자 집합을 사용한 문자열로 변환해 주 는 함수입니다.

TO_CHAR(character)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

clob

문자열로 변환할 CLOB 타입의 데이터

  • 예제

다음은 TO_CHAR(character) 함수를 사용하는 예입니다.

TO_CHAR(datetime)

TO_CHAR(datetime)은 파라미터로 주어진 날짜형 데이터 타입과 간격 리터럴의 값을 format에 따라 문 자열로 변환하여 반환하는 함수입니다.

TO_CHAR(datetime)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

날짜형의 값을 반환하는 임의의 연산식

format

  • 날짜형 형식의 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식에 따라 문자열로 변환

  • 날짜형 형식의 문자열은 “날짜형 타입”을 참고

  • 예제

다음은 TO_CHAR(datetime) 함수를 사용하는 예입니다.

TO_CHAR(number)

TO_CHAR(number)는 파라미터로 주어진 숫자형 타입의 값을 format에 따라 문자열로 변환하여 반환하는 함수입니다.

TO_CHAR(number)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

숫자형 타입의 값을 반환하는 임의의 연산식

format

  • 숫자형 타입의 형식 문자열입

  • 만약 format이 지정되지 않으면 디폴트로 모든 유효 숫자를 문자열로 변환

  • 숫자형 타입의 형식 문자열은 “NUMBER 타입”을 참고

  • 예제

다음은 TO_CHAR (number) 함수를 사용하는 예입니다.

TO_CLOB

TO_CLOB은 파라미터로 주어진 lob_column 또는 char을 CLOB 타입으로 변환하는 함수입니다.

TO_CLOB의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

lob_column

CHAR 타입, VARCHAR 타입 또는 CLOB 타입의 컬럼

char

문자열을 반환하는 임의의 연산식

  • 예제

다음은 TO_CLOB 함수를 사용하는 예입니다.

TO_DATE

TO_DATE은 문자열 str을 format에 따라 DATE 타입의 값으로 변환하여 반환하는 함수입니다.

TO_DATE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

format

  • 날짜형 형식의 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

  • 예제

다음은 TO_DATE 함수를 사용하여 DATE 타입의 데이터를 반환하는 예입니다.

TO_DSINTERVAL

TO_DSINTERVAL은 CHAR, VARCHAR2, NCHAR, NVARCHAR2 타입의 문자열을 INTERVAL DAY TO

SECOND 타입으로 변환하는 함수입니다.

TO_DSINTERVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

days

0~999999999 사이의 정수

hours

0~23 사이의 정수

minutes, seconds

0~59 사이의 정수

frac_secs

0~999999999 사이의 정수

  • 예제

다음은 TO_DSINTERVAL 함수를 사용하여 2008년 3월 20일을 기준으로 50일 전의 날짜를 구하는 예 입니다.

TO_LOB

TO_LOB은 LONG 값을 CLOB, LONG RAW 값을 BLOB 값으로 변환하는 함수입니다. LONG 또는 LONG RAW 타입의 컬럼만을 인자로 가지며 INSERT 문의 서브쿼리와 UPDATE 문의 컬럼 값을 갱신하는 서브 쿼리에만 사용할 수 있습니다.

TO_LOB의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

long_column

LONG 타입 또는 LONG RAW 타입의 컬럼

  • 예제

다음은 TO_LOB 함수를 사용하는 예입니다.

TO_MULTI_BYTE

TO_MULTI_BYTE는 입력으로 들어온 파라미터 str의 값을 상응하는 MULTI-BYTE 문자로 변환하는 함수 입니다. 입력으로 올 수 있는 파라미터의 형식은 VARCHAR, CHAR, NCHAR, NVARCHAR 타입이고, 반환 형식은 입력 형식과 같습니다.

TO_MULTI_BYTE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

MULTI-BYTE 문자로 변환할 값

  • 예제

다음은 TO_MULTI_BYTE 함수를 사용하는 예입니다.

TO_NCHAR(character)

TO_NCHAR(character)는 CHAR, VARCHAR, CLOB, NCLOB 타입의 입력 값을 NATIONAL 문자 집합의 값으로 변환하는 함수입니다.

TO_NCHAR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

NATIONAL 문자 집합으로 변환할 문자를 나타내는 값

  • 예제

다음은 TO_NCHAR(character) 함수를 사용하는 예입니다.

TO_NCHAR(datetime)

TO_NCHAR(datetime)은 파라미터로 주어진 날짜형 데이터 타입과 간격 리터럴의 값을 format에 따라

NATIONAL 문자 집합의 값으로 변환하는 함수입니다.

TO_NCHAR(datetime)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

NATIONAL 문자 집합으로 변환할 날짜형의 값을 나타냄

format

  • 날짜형 형식의 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식에 따라 문자열로 변환

  • 날짜형 형식의 문자열은 “날짜형 타입”을 참고

  • 예제

다음은 TO_NCHAR(datetime) 함수를 사용하는 예입니다.

TO_NCHAR(number)

TO_NCHAR(number)는 파라미터로 주어진 숫자형 타입의 값을 format에 따라 NATIONAL 문자 집합의 값으로 변환하는 함수입니다.

TO_NCHAR(number)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

NATIONAL 문자 집합으로 변환할 숫자형 타입을 나타내는 값

format

  • 숫자형 타입의 형식 문자열

  • 만약 format이 지정되지 않으면 디폴트로 모든 유효 숫자를 문자열로 변환

  • 숫자형 타입의 형식 문자열은 “NUMBER 타입”을 참고

  • 예제

다음은 TO_NCHAR(number) 함수를 사용하는 예입니다.

TO_NCLOB

TO_NCLOB은 파라미터로 주어진 lob_column 또는 char을 NCLOB 타입으로 변환하는 함수입니다.

TO_NCLOB의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

lob_column

CHAR 타입, VARCHAR 타입 또는 CLOB 타입의 컬럼

char

문자열을 반환하는 임의의 연산식

  • 예제

다음은 TO_NCLOB 함수를 사용하는 예입니다.

TO_NUMBER

TO_NUMBER는 문자열 str을 format에 따라 NUMBER 타입의 값으로 변환하여 반환하는 함수입니다. NLS_NUMERIC_CHARACTERS는 그룹 구분 기호와 소숫점으로 사용할 문자를 지정합니다.

TO_NUMBER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

format

  • 숫자형 타입의 형식 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

NLS_NUMERIC_CHARACTERS

구분자와 소수점 지정

  • 예제

다음은 TO_NUMBER 함수를 사용하는 예입니다.

TO_SINGLE_BYTE

TO_SINGLE_BYTE는 입력으로 들어온 파라미터 str의 값을 상응하는 SINGLE-BYTE 문자로 변환하는 함수입니다. 입력으로 올 수 있는 파라미터의 형식은 VARCHAR, CHAR, NCHAR, NVARCHAR 타입이고, 반환 형식은 입력 형식과 같습니다.

TO_SINGLE_BYTE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

SINGLE-BYTE 문자로 변환할 값

  • 예제

다음은 TO_SINGLE_BYTE 함수를 사용하는 예입니다.

TO_TIME

TO_TIME은 문자열 str을 format에 따라 TIME 타입의 값으로 변환하여 반환하는 함수입니다.

TO_TIME의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

format

  • 날짜형 형식의 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

  • 예제

다음은 TO_TIME 함수를 사용하는 예입니다.

TO_TIMESTAMP

TO_TIMESTAMP는 문자열 str을 format에 따라 TIMESTAMP 타입의 값으로 변환하여 반환하는 함수입니다.

TO_TIMESTAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

format

  • 날짜형 형식의 문자열입

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

  • 예제

다음은 TO_TIMESTAMP 함수를 사용하는 예입니다.

TO_TIMESTAMP_TZ

TO_TIMESTAMP_TZ는 문자열 str을 format에 따라 TIMESTAMP WITH TIME ZONE 타입의 값으로 변환 하여 반환하는 함수입니다.

TO_TIMESTAMP_TZ의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • 문자열을 반환하는 임의의 연산식

  • 만약 문자열에 시간대 정보가 포함되지 않 은 경우 세션의 디폴트 시간대를 사용

format

  • 날짜형 형식의 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

  • 예제

다음은 TO_TIMESTAMP_TZ 함수를 사용하는 예입니다.

TO_YMINTERVAL

TO_YMINTERVAL은 CHAR, VARCHAR2, NCHAR, NVARCHAR2 타입의 문자열을 INTERVAL YEAR

TO MONTH 타입으로 변환하는 함수입니다.

TO_YMINTERVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

years

0~999999999 사이의 정수

months

0~11 사이의 정수

  • 예제

다음은 TO_YMINTERVAL 함수를 사용하여 2008년 3월 20일을 기준으로 2년 7개월 이후의 날짜를 구 하는 예입니다.

TRANSLATE

TRANSLATE는 문자열 str 내의 각각의 문자가 문자열 from_str에 포함되어 있습니다면, 해당 문자를 문자열 from_str에서의 위치와 동일한 위치에 있는 문자열 to_str의 문자로 변환시키는 함수입니다.

TRANSLATE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

from_str

  • 문자열을 반환하는 임의의 연산식

  • 문자열 from_str의 길이가 문자열 to_str의 길이보다 긴 경우 문자열 from_str 내에는 to_str 대응되지 않는 문자가 포함됨

  • 만약 이렇게 to_str과 대응되지 않는 from_str의 문자가 문자열 str에 포함되어 있습니다면 해당 문자는 모두 제거됨

to_str

문자열을 반환하는 임의의 연산식입니다.

  • 예제

다음은 TRANSLATE 함수를 사용하는 예입니다.

TRIM

TRIM은 문자열 str의 앞과 뒤에서 trim_character와 같은 문자를 모두 제거하는 함수입니다.

TRIM의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

LEADING

trim_character 앞에 LEADING이 오면 str의 앞에서만 문자를 제거

TRAILING

trim_character 앞에 TRAILING이 오면 str의 뒤에서만 문자를 제거

BOTH

trim_character 앞에 BOTH가 오거나 아무 것도 오지 않으면 str의 앞과 뒤에서 문자를 제거

trim_character

  • trim_character는 길이가 1인 문자

  • trim_character가 지정되지 않으면 공백 문자(스페이스)를 제거하게 됨

  • 예제

다음은 TRIM 함수를 사용하는 예입니다.

TRUNC(number)

TRUNC(number)는 num1을 소수점 아래 num2 위치에서 버림(Truncation)한 값을 반환하는 함수입니다.

TRUNC(number)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num1, num2

  • 수치 값을 반환하는 임의의 연산식

  • num1이나 num2는 숫자형 타입이거나 숫자형 타입으로 변환될 수 있는 타입이어야 함

  • num2는 정수이어야 하고, 만약 num2가 주어지지 않거나 0이면 소수점 자리에서 버림을 함

  • num2가 음수이면 소수점 위의 자리에서 버림을 함

  • 예제

다음은 TRUNC(number)를 사용하는 예입니다.

TRUNC(date)

TRUNC(date)는 date를 format에 명시된 단위로 버림한 결과를 반환하는 함수입니다.

circle-info

TRUNC(date)함수의 format에 명시할 수 있는 형식 문자열은 ROUND(date) 함수와 동일합니다.

TRUNC(date)의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

date

날짜를 반환하는 임의의 연산식

format

  • 버림 단위를 명시하는 형식 문자열

  • format이 명시되지 않습니다면 'DD' 형식 문자열을 이용하여 가장 가까운 날로 버림이 됨

  • format으로 'YEAR', 'MONTH', 'DAY' 등을 사용할 수 있음

  • 예제

다음은 TRUNC(date) 함수를 사용하는 예입니다.

TSN_TO_TIMESTAMP

TSN_TO_TIMESTAMP은 주어진 TSN과 가장 근접한 시간값을 반환하는 함수입니다.

TSN_TO_TIMESTAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

num

숫자 값을 반환하는 임의의 연산식입니다.

  • 예제

다음은 TSN_TO_TIMESTAMP 함수를 사용하는 예입니다.

TZ_OFFSET

TZ_OFFSET은 주어진 시간대를 오프셋 형식으로 반환하는 함수입니다.

TZ_OFFSET의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

timezone_name

시간대 지역 이름을 반환하는 문자열

[+|-]hh:mi

시간대 오프셋 값을 반환하는 문자열

SESSIONTIMEZONE

현재 세션의 시간대 값을 반환하는 함수

  • 예제

다음은 TZ_OFFSET을 사용하는 예입니다.

TZ_SHIFT

TZ_SHIFT는 주어진 시간대를 특정 시간대로 변환하는 함수입니다.

TZ_SHIFT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

시간대 정보를 포함한 시간값을 반환하는 임의의 연산식

timezone_name

시간대 지역 이름을 반환하는 문자열

[+|-]hh:mi

시간대 오프셋 값을 반환하는 문자열

SESSIONTIMEZONE

현재 세션의 시간대 값을 반환하는 함수

  • 예제

다음은 TZ_SHIFT을 사용하는 예입니다.

UID

UID는 현재 세션을 생성한 사용자의 ID를 반환하는 함수입니다. 사용자 ID는 Tibero의 시스템 내에서 그 사 용자를 식별해주는 유일한 정수 값입니다. 파라미터는 없으며 괄호를 생략합니다.

UID의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 UID 함수를 사용하는 예입니다.

UNISTR

UNISTR는 유니코드 문자열을 입력받아 다국어 문자집합으로 인코딩된 문자열을 반환하는 함수입니다. 입 력으로 사용하는 유니코드 문자열은 '\xxxx' 형태이며, 여기서 'xxxx'는 UCS-2 포맷으로 인코딩된 16진수 문자열입니다.

UNISTR의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 UNISTR 함수를 사용하는 예입니다.

UPDATEXML

UPDATEXML은 XPath expression과 XMLType instance의 쌍으로 입력된 인자들로 XMLType_instance 의 각 해당 xpath들을 value_expr의 value로 치환하는 함수입니다. 실제 xml column 값이 바뀌지 않고, 바뀐 XMLType instance가 반환됩니다. 만약 해당 xpath에 해당하는 node가 존재하지 않으면 원래의 바뀌지 않 은 xmltype instance가 반환됩니다.

UPDATEXML의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

XMLType_instance

XML 타입의 instance

XPath_string

Xpath expression으로 업데이트할 곳의 child node들이 업데이트 됨

value_expr

업데이트할 곳의 child node들이 값

namespace_string

  • XPath_string의 네임스페이스 정보를 나타냄

  • VARCHAR 타입이어야 함

  • 예제

다음은 UPDATEXML 함수를 사용하는 예입니다.

UPPER

UPPER는 문자열 str 내의 모든 영문자를 대문자로 변환하여 반환하는 함수입니다.

UPPER의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 UPPER 함수를 사용하는 예입니다.

USER

USER는 현재 세션을 생성한 사용자의 이름을 반환하는 함수입니다. 파라미터는 없으며 괄호를 생략합니다.

USER의 세부 내용은 다음과 같습니다.

  • 문법

  • 예제

다음은 USER 함수를 사용하는 예입니다.

USERENV

USERENV는 현재 세션의 정보를 보여주는 함수입니다.

참고

USERENV 함수에서 제공하는 파라미터는 “SYS_CONTEXT”를 참고합니다.

USERENV의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

문자열을 반환하는 임의의 연산식

  • 예제

다음은 USERENV 함수를 사용하는 예입니다.

VALIDATE_CONVERSION

VALIDATE_CONVERSION은 문자열 expr을 지정된 데이터 타입으로 변환할 수 있는지 여부를 반환하는 함수입니다. 성공적으로 변환할 수 있으면 1을, 그렇지 않으면 0을 반환합니다. expr이 NULL이면 1을 반환합니다.

VALIDATE_CONVERSION의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr은 변환 가능 여부를 확인할 표현식

  • expr의 데이터 타입은 CHAR, NCHAR, VARCHAR, NVARCHAR 중 하나여야 함

  • 다만, 변환할 타입이 숫자형 타입인 경우, expr도 숫자형 타입일 수 있음

typename

  • typename은 변환할 데이터 타입의 이름을 명시

  • typename으로 가능한 타입들은 NUMBER, BINARY_DOUBLE, BINARY_FLOAT, DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE, INTERVAL DAY TO SECOND, INTERVAL YEAR TO MONTH

format

  • 숫자형 또는 날짜형 타입의 형식 문자열

  • 만약 format이 지정되지 않으면 디폴트 형식으로 변환을 수행

  • typename이 INTERVAL 타입인 경우 format을 지정할 수 없음

nlsparam

  • NLS 파라미터를 설정하여 변환 가능 여부를 확인할 수 있음

  • typename이 INTERVAL 타입인 경우 nlsparam을 지정할 수 없음

  • 예제

다음은 VALIDATE_CONVERSION 함수를 사용하는 예입니다.

VAR_POP

VAR_POP은 expr의 모분산을 반환합니다. 모분산을 계산할 때 NULL 값은 무시됩니다. 이 함수는 파라미터의 수치 데이터 타입 또는 변환된 수치 데이터 타입을 반환합니다. 이 함수를 공집합에 적용하면 NULL 값을 반 환합니다.

이 함수는 다음과 같은 계산식으로 계산을 수행합니다.

VAR_POP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • 수치 데이터 타입 또는 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환할 수 있는 데이터 타입을 반환하는 임의의 연산식

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용 은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 VAR_POP 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 VAR_POP 함수를 분석 함수로 사용하는 예입니다.

VAR_SAMP

VAR_SAMP는 expr의 표본분산을 반환하는 함수입니다. 표본분산을 계산할 때 NULL 값은 무시됩니다. 이 함 수는 파라미터의 수치 데이터 타입 또는 변환된 수치 데이터 타입을 반환합니다. 이 함수를 공집합에 적용하 면 NULL 값을 반환합니다.

이 함수는 다음과 같은 계산식으로 계산을 수행합니다.

VAR_SAMP의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 데이터 타입 또는 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타 입으로 변환할 수 있는 데이터 타입을 반환하는 임의의 연산식

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용 은 “4.1.3. 분석 함수”의 analytic_clause를 참고

  • 예제

다음은 VAR_SAMP 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 VAR_SAMP 함수를 분석 함수로 사용하는 예입니다.

VARIANCE

VARIANCE는 expr의 분산을 반환합니다. 분석 함수로도 사용할 수 있습니다. 이 함수는 파라미터의 수치 데이 터 타입 또는 변환된 수치 데이터 타입을 반환합니다. 이 함수를 공집합에 적용하면 NULL 값을 반환합니다.

Tibero에서는 분산을 다음과 같이 계산합니다.

  • expr의 로우의 수가 1이면 0을 반환합니다.

  • expr의 로우의 수가 1보다 크면 VAR_SAMP 함수의 값을 반환합니다.

VARIANCE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

수치 데이터 타입 또는 수치 데이터 타입은 아니지만 묵시적으로 수치 데이터 타입으로 변환할 수 있는 데이터 타입을 반환하는 임의의 연산식

analytic_clause

  • OVER analytic_clause를 사용해 함수를 분석 함수로 수행할 수 있음

  • 자세한 내용 은 “분석 함수”의 analytic_clause를 참고

  • 예제

다음은 VARIANCE 함수를 사용하는 예입니다.

  • 분석 함수 예제

다음은 VARIANCE 함수를 분석 함수로 사용하는 예입니다.

VSIZE

VSIZE는 expr을 표현하기 위해 내부적으로 사용되는 byte 크기를 반환하는 함수입니다.

VSIZE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • 임의의 연산식

  • expr이 NULL이면 함수는 NULL을 반환

  • 예제

다음은 VSIZE 함수를 사용하는 예입니다.

XMLAGG

XMLAGG는 집합 함수입니다. XML 조각을 받고, 이를 한데 모아 XML 문서로 만들어 반환하는 함수입니다. NULL 값을 반환하는 파라미터는 결과로부터 제외됩니다.

XMLAGG의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xml_expr

XML 문장을 반환하는 임의의 연산식

order_by_clause

  • XML 문장들을 어떻게 정렬할지를 명시

  • 자세한 내용은 “분석 함수”의 order_by_clause를 참고

  • 예제

다음은 XMLAGG 함수를 사용하는 예입니다.

XMLCAST

XMLCAST는 첫 번째 파라미터의 값을 두 번째 파라미터에서 지정한 SQL 데이터 타입으로 변환하는 함 수입니다.

XMLCAST의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

XML 문장을 반환하는 임의의 연산식

typename

변환할 SQL 데이터 타입의 이름을 명시

  • 예제

다음은 XMLCAST 함수를 사용하는 예입니다.

XMLCDATA

XMLCDATA는 expr의 결과로 CDATA 섹션을 만드는 함수입니다. **<![CDATA[string]]>**와 같은 포맷의

XMLType을 반환합니다. 단, 이 함수는 Solaris 환경에서 지원하지 않습니다.

XMLCDATA의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • XML CDATA 섹션의 내용이 될 문자열

  • expr이 NULL이면 함수는 NULL을 반환

  • 예제

다음은 XMLCDATA 함수를 사용하는 예입니다.

XMLCOLATTVAL

XMLCOLATTVAL는 파라미터 각각을 "column" 이름과 "name" 속성을 가지는 XML 노드로 변환하고, 변 환된 파라미터를 결합하여 반환하는 함수입니다.

XMLCOLATTVAL의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr이 컬럼이면 AS 절을 생략할 수 있으며, Tibero는 컬럼명을 노드 속성이름으로 사용

  • expr이 NULL이면, 해당 expression에 어떠한 속성도 생성되지 않음

alias, EVALNAME expr

  • AS 절을 이용하여 expr의 별칭을 명시

  • alias나 expr의 값은 반드시 문자열이어야 하며, 그 크기는 최대 4000자

  • 예제

다음은 XMLCOLATTVAL 함수를 사용하는 예입니다.

XMLCOMMENT

XMLCOMMENT는 expr의 결과로 XML 주석을 만드는 함수입니다. **<!--string-->**와 같은 포맷의 XMLType을 반환합니다.

XMLCOMMENT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

XML 주석의 내용이 될 문자열입니다. expr이 NULL이면 함수는 NULL을 반환

  • 예제

다음은 XMLCOMMENT 함수를 사용하는 예입니다.

XMLCONCAT

XMLCONCAT는 입력으로 나열된 모든 XMLType 객체들을 접합한 결과를 반환합니다. 임의의 expr이 NULL

일 경우엔 해당 expr을 무시하고, 모든 expr이 NULL일 경우엔 NULL을 반환합니다. XMLCONCAT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

XMLType 객체를 반환하는 연산식

  • 예제

다음은 XMLCONCAT 함수를 사용하는 예입니다.

XMLELEMENT

XMLELEMENT는 identifier로는 엘리먼트(Element)의 이름을 받고, 엘리먼트의 속성 집합을 옵션으로 받 으며, 엘리먼트의 내용을 구성하는 파라미터를 받는 함수입니다. 이 함수는 중첩된 구조를 가진 XML 문서를 생성하기 위해서 보통은 중첩되어 사용됩니다.

XMLELEMENT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

– xmlelement

구성요소
설명

identifier

  • identifier의 값은 XML의 enclosing tag로 사용되기 때문에 반드시 제공되어야 함

  • identifier의 크기는 4000자까지이며, 컬럼명 또는 컬럼에 대한 참조일 필요는 없지만 표현식 또는 NULL 값일 수도 없음

  • 엘리먼트의 내용을 구성하는 개체는 XMLATTRIBUTES 예약어 이후에 명시

xml_attributes_clause

XML의 속성(attribute)을 표현하기 위한 문법입니다. 엘리먼트의 값을 나타냄

expr

엘리먼트의 내용을 구성하는 연산식

– xml_attributes_clause

구성요소
설명

expr

  • expr이 컬럼이면 AS 절을 생략할 수 있으며, Tibero는 컬럼명을 엘리먼트 이름으로 사용

  • expr이 NULL이면, 해당 value expression에 어떠한 속성도 생성되지 않음

  • value expression은 XMLELEMENT의 expr을 의미

alias

AS 절을 이용하여 expr의 별칭을 명시할 때 c_alias의 크기는 최대 4000자

  • 예제

다음은 XMLELEMENT 함수를 사용하는 예입니다.

XMLEXISTS

XMLEXISTS는 XQuery 표현식의 결과가 비어 있는지의 여부를 검사하는 함수입니다. 이 함수의 반환값이 비어 있지 않으면 TRUE를, 비어 있으면 FALSE인 Boolean 값입니다.

XMLEXISTS의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

XML 문서에 질의할 XQuery 문자열

expr

  • XMLType이 결과인 표현식

  • 표현식의 결과가 XMLType이 아니면 에러를 발생

  • 예제

다음은 XMLEXISTS 함수를 사용하는 예입니다.

XMLFOREST

XMLForest는 파라미터 각각을 XML로 변환하고, 변환된 파라미터를 결합하여 반환하는 함수입니다.

XMLFOREST의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • expr이 컬럼이면 AS 절을 생략할 수 있으며, Tibero는 컬럼명을 엘리먼트 이름으 로 사용

  • expr이 NULL이면, 해당 value expression에 어떠한 속성도 생성되지 않음

alias

AS 절을 이용하여 expr의 별칭을 명시할 때 c_alias의 크기는 최대 4000자

  • 예제

다음은 XMLFOREST 함수를 사용하는 예입니다.

XMLPARSE

XMLPARSE는 expr로부터 XMLType을 만드는 함수입니다.

XMLPARSE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

DOCUMENT

expr의 결과는 반드시 루트가 하나인 XML 문서이어야 함

CONTENT

expr의 결과는 XML 값이어야 함

expr

expr의 결과는 반드시 문자열 타입이어야 함

WELLFORMED

CONTENT의 경우 데이터베이스 내부적으로 WELLFORMED CHECK를 하지 않음

  • 예제

다음은 XMLPARSE 함수를 사용하는 예입니다.

XMLPI

XMLPI는 XML 문서의 PI 문법을 생성하는 함수입니다. XMLType을 반환합니다.

XMLPI의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

identifier

  • XML 문의 PI 문법에서 name에 들어갈 문자열

  • XML 내부에서 사용하는 예약어 또는 물음표(?) , >를 포함할 수 없음

expr

  • 문자열이 결과인 expr

  • 생략되면, 길이가 0인 문자열로 간주됨

  • 예제

다음은 XMLPI 함수를 사용하는 예입니다.

XMLQUERY

XMLQUERY는 지정된 XML 쿼리를 이용하여 해당 XML 데이터를 가져오는 함수입니다. XMLType을 반환 합니다.

XMLQUERY의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

str

  • XML 문서에 질의할 XQuery 문자열

  • 최대 4000자

expr

  • 질의의 대상이 되는 XML 문서가 결과인 표현식

  • XMLType이어야 함

  • 예제

다음은 XMLQUERY 함수를 사용하는 예입니다.

XMLROOT

XMLROOT는 XML 문서의 선언부를 생성하는 함수입니다. <?xml version="version" [stan dalone="{yes|no}"]?>와 같은 포맷의 XMLType을 반환합니다.

XMLROOT의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

expr

  • XMLType이 결과인 표현식

  • 표현식의 결과가 XMLType이 아니면 에러를 발생

VERSION

문자열을 반환하는 표현식입니다.'NO VALUE'가 주어진 경우 "1.0"을 기본값으로 사용

STANDALONE

STANDALONE 구문이 생략되거나 'NO VALUE'가 사용된 경우엔 생략

  • 예제

다음은 XMLROOT 함수를 사용하는 예입니다.

XMLSERIALIZE

XMLSERIALIZE는 expr로부터 문자열이나 LOB 객체를 만드는 함수입니다.

XMLSERIALIZE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

DOCUMENT

expr의 결과는 반드시 루트가 하나인 XML 문서이어야 함

CONTENT

expr의 결과는 XML 값이어야 함

expr

XML 문서를 반환하는 임의의 연산식

datatype

  • 결과 타입을 지정

  • VARCHAR2와 CLOB을 사용할 수 있음(기본값: CLOB)

  • 예제

다음은 XMLSERIALIZE 함수를 사용하는 예입니다.

XMLSEQUENCE

XMLSEQUENCE는 XMLType을 입력으로 XMLType의 VARRAY를 반환하는 함수입니다.

XMLSEQUENCE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xmltype_instance

질의의 대상이 되는 XML 문서로, XMLType

  • 예제

다음은 XMLSEQUENCE 함수를 사용하는 예입니다.

XMLTABLE

XMLTABLE은 XML 문서에 XML Query를 질의한 결과를 테이블 형태로 반환하는 함수입니다. 각 컬럼의 값 은 XML Query의 결과 XML에서 XPath를 통해 설정하며, 타입 지정을 통해서 해당 데이터 타입으로 설정 되어 반환됩니다.

XMLTABLE의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xquery_str

  • XML 문서에 질의할 XML Query

  • 최대 길이는 4000자로 제한됨

xmlnamespace_clause의 str

  • XML Query를 질의할 특정 네임스페이스를 지정할 수 있음

  • 필요 없으면 생략할 수 있음

xml_passing_clause의 expr

XML Query를 질의할 XML 문서

xmltable_column의 FOR ORDINALITY

  • FOR ORDINALITY 구문은 column이 생성된 row numbers의 column이 되도록 지정

  • FOR ORDINALITY 절은 하나만 있어야 함

  • NUMBER column으로 생성됨

xmltable_column의 datatype

결과 컬럼의 데이터 타입을 명시

xmltable_column의 str

  • 결과 컬럼의 이름을 명시

  • 문자열이며 최대 4000자

xmltable_column의 expr

  • 해당 XPath에 값이 없을 경우 디폴트 값

  • 이 문법이 생략되면 NULL이 기본값

  • 예제

다음은 XMLTABLE 함수를 사용하는 예입니다.

XMLTRANSFORM

XMLTRANSFORM은 xmltype_instance를 xslt_document에 표현된 형식으로 변형하는 함수입니다. param_map을 통해 xslt_document에 정의된 파라미터를 입력할 수 있습니다.

XMLTRANSFORM의 세부 내용은 다음과 같습니다.

  • 문법

  • 구성요소

구성요소
설명

xmltype_instance

질의의 대상이 되는 XML 문서로, XMLType

xslt_document

변형 형식이 표현된 XSLT 문서로, XMLType

param_map

  • XSLT 문서에 정의된 파라미터를 입력할 수 있음

  • name1=value1 name2=value2 ... 형식의 문자열

  • 예제

다음은 XMLTRANSFORM 함수를 사용하는 예입니다.

Last updated