오라클 내장 함수
오라클의 함수에는 단일행(single row) 함수와 복수행(multi row) 함수(그룹함수)가 있다.
숫자 함수(number function)
문자 함수(character function)
날짜와 날짜 처리함수(date, datetime function)
데이터타입의 변환 함수(conversion function)
기타함수(miscellaneous single row function)
XML 함수
그룹함수중집계(Aggregate) 함수
그룹함수중
분석(Analytic) 함수
object reference 함수
MODEL 함수
model 절에서만 사용하는 model 함수는 다음과 같다.
윈도우(windowing) 분석 함수
오라클의 함수에는 단일행(single row) 함수와 복수행(multi row) 함수(그룹함수)가 있다.
숫자 함수(number function)
ABS | 입력값의 절대값을 반환 |
ACOS | arc cosine값을 반환 |
ASIN | arc sine 값을 반환 |
ATAN | arc tangent 값을 반환 |
ATAN2 | atan2(n,m)은 atan2(n/m)과 같으며, n/m의 arc tangent 값을 반환 |
BITAND | 두 입력의 bitwise AND |
CEIL | n보다 크면서 n에 가장 가까운 정수를 반환 |
COS | cosine 값을 반환 |
COSH | hyperbolic cosine 값을 반환 |
EXP | e의 n 제곱 값을 반환한다. e=2.71828183 |
FLOOR | 입력값 이하의 가장 큰 정수를 반환 |
LN | 자연 대수(밑을 e로 하는) 값을 반환 |
LOG | 뒤 인수가 앞 인수의 몇 배수인지를 알림 |
MOD | MOD(m,n)에서 m을 n으로 나눈 나머지 값을 반환 |
NANVL | n2가 NAN(not a number)이면 n1을 반환하고, n2가 NAN이면 n2를 반환하므로 BINARY_FLOAT와 BINARY_DOUBLE에 유용함 |
POWER | POWER(m,n)에서 m의 n제곱한 값을 반환 |
REMAINDER | n2를 n1으로 나눈 나머지값을 반환하므로 numeric 또는 nonnumeric 데이터타입을 numeric 데이터타입으로 변환할 수 있음 |
ROUND(number) | 정의된 수를 지정한 자릿수에서 반올림 |
SIGN | 입력 값의 부호를 판정 |
SIN | radian으로 주어진 정현파값을 반환 |
SINH | hyperbolic sine 값을 반환 |
SQRT | 제곱근 값을 반환 |
TAN | radian으로 표시된 n의 tangent 값을 반환 |
TANH | n의 hyperbolic tangent 값을 반환 |
TRUNC(number) | 지정한 소수점 자리수 이하를 절삭한 값을 반환 |
WIDTH_BUCKET | 히스토그램값을 반환 |
문자 함수(character function)
character value를 반환하는 함수 | |
CHR | 입력된 수의 바이너리 코드에 해당하는 문자를 반환 |
CONCAT | 첫번째 문자열과 두번째 문자열을 연결 |
INITCAP | 각 단어의 첫 글자를 대문자로 나머지는 소문자로 변환 |
LOWER | 입력된 문자열을 모두 소문자로 반환. UPPER의 반대개념 |
LEVEL 함수 | 계층적 구조의 단계를 출력함, LPAD를 사용해도 됨 |
LPAD | 정의된 문장의 왼쪽 나머지 공간을 지정한 문자로 채움, RPAD의 반대, (LEVEL 함수 참조) |
LTRIM | 문자열중 좌측으로부터 특정문자와 일치하는 문자를 제거하고 출력 |
NCHR | national 문자 셋에서 입력된 수의 바이너리 코드에 해당하는 문자를 반환 |
NLS_INITCAP | 각 단어의 첫 글자를 대문자로 나머지는 소문자로 변환 |
NLS_LOWER | 문자열을 모두 소문자로 변환한 스트링을 반환 |
NLSSORT | 입력 문자열을 소팅하여 스트링을 반환 |
NLS_UPPER | 문자열을 모두 대문자로 변환한 스트링을 반환 |
REGEXP_COUNT | 문자열에서 패턴이 발생한 횟수를 반환 |
REGEXP_INSTR | 문자열에 존재하는 임의의 패턴의 위치를 출력 |
REGEXP_LIKE | LIKE 연산자와 유사한 기능의 함수 |
REGEXP_REPLACE | 문자열에 존재하는 임의의 패턴을 대치하여 출력 |
REGEXP_SUBSTR | 문자열에 존재하는 임의의 패턴을 추출하여 출력 |
REPLACE | 정의된 문장에서 해당 문자가 발견되면 지정한 문자로 대치 |
RPAD | 정의된 문장의 오른쪽 나머지 공간을 지정한 문자로 채움, LPAD의 반대 |
RTRIM | 문자열중 우측으로부터 특정문자와 일치하는 문자를 제거하고 출력 |
SOUNDEX | 영문발음이 같은 문자 스트링을 반환 |
SUBSTR | 문자값 중 특정 위치부터 특정 길이 만큼의 문자값만을 리턴. <dd>SUBSTRB, SUBSTRC, SUBSTR2, SUBSTR4</dd> |
TRANSLATE | char 내에 포함된 문자중 from_string에 지정한 모든 각각의 문자를 to_string문자로 각각 변경 |
TREAT | 선언된 타입을 변경 |
TRIM | LTRIM과 RTRIM 함수를 결합한 형태로 문자값의 왼쪽 또는 오른쪽 부분에 정의한 문자를 절삭하여 출력 |
UPPER | 모든 문자를 대문자로 변환, LOWER의 반대개념 |
NLS character 함수 | |
NLS_CHARSET_DECL_LEN | NCHAR 컬럼에 대해서 nchar로 선언된 컬럼폭을 반환 |
NLS_CHARSET_ID | 문자셋 이름에 대응하는 문자셋 ID 번호를 반환 |
NLS_CHARSET_NAME | 문자셋 ID 번호에 대응하는 문자셋 이름을 반환 |
number value를 반환하는 함수 | |
ASCII | 주어진 문자의 첫문자에 대한 아스키코드값을 반환 |
INSTR | 문자 스트링 중에서 지정한 문자가 우측/좌측으로부터 처음 나타나는 위치를 숫자로 출력 |
LENGTH | 정의된 단어의 길이값을 반환(LENGTH, LENGTHB, LENGTHC, LENGTH2, LENGTH4) |
REGEXP_INSTR | 문자열에 존재하는 임의의 패턴의 위치를 출력 |
comparison 함수 | |
GREATEST | 하나 이상의 아규먼트중에서 가장 높은 값을 찾아 줌 |
LEAST | 하나 이상의 아규먼트중에서 가장 낮은 값을 찾아 줌 |
날짜와 날짜 처리함수(date, datetime function)
ADD_MONTHS | ADD_MONTHS(d, n)는 날짜 d에 n 개월을 더한 일자를 반환 |
CURRENT_DATE | 현재 session의 날짜 정보를 일/월/년 24시:분:초 형식으로 반환 |
CURRENT_TIMESTAMP | TIMESTAMP WITH TIME ZONE 데이터타입으로 current date와 session time zone을 반환 |
DBTIMEZONE | 데이터베이스가 처음 생성될 때 운영체제로부터 확인된 시간 |
EXTRACT(datetime) | datetime이나 interval 값으로부터 특정 시각정보를 추출 |
FROM_TZ | timestamp with time zone 시간정보를 참조할 때 |
LAST_DAY | 해당 날짜가 속한 달의 마지막 날짜를 반환 |
LOCALTIMESTAMP | 현재 지역의 시간정보를 표현 |
MONTHS_BETWEEN | MONTHS_BETWEEN(date1,date2)는 date1과 date로 나타내는 날짜와 날짜 사이의 개월 수를 출력 |
NEW_TIME | NEW_TIME(date,zone1,zone2)는 date, zone1 시간대를 zone2 시간대로 출력 |
NEXT_DAY | NEXT_DAY(date,char) 함수는 date로부터 그 다음주 char로 명시한 요일을 출력 |
NLS_DATE_FORMAT | 날짜 타입을 변경 |
NUMTODSINTERVAL | n을 interval day to second로 변환하여 출력 |
NUMTOYMINTERVAL | n을 interval year to month로 변환하여 출력 |
ROUND(date) | 년,월,일을 기준으로 반올림하거나 절삭 |
SESSIONTIMEZONE | 사용자가 접속한 세션의 현재 시간 정보 |
SYS_EXTRACT_UTC | datetime 또는 time zone region name을 받아 그리니치 표준시각을 반환 |
SYSDATE | 운영체제상의 오늘 현재 날짜와 시각을 출력 |
SYSTIMESTAMP | TIMESTAMP WITH TIME ZONE 형식의 시스템 날짜를 출력 |
TRUNC(date) | 날짜를 절삭하여 출력 |
TZ_OFFSET | time zone의 offset 값을 출력 |
데이터타입의 변환 함수(conversion function)
ASCIISTR | string의 아스키 문자로 반환, UTF-16 코드로 변환된 값을 반환 |
BIN_TO_NUM | 2진수 벡터를 10진수로 변환 |
CAST | built-in 데이터타입이나 collection-typed 값을 다른 built-in 데이터타입이나 다른 collection-typed 값으로 변환 |
CHARTOROWID | CHAR, VARCHAR2, NCHAR, NCHARVAR2 데이터타입을 ROWID 데이터타입으로 변환 |
COMPOSE | 입력된 스트링을 unicode로 나타낸다 |
CONVERT | 입력된 문자열을 지정한 코드로 변환 |
CUBE_TABLE | 3차원 데이터를 2차원 데이터로 반환 |
DECOMPOSE | 임의의 데이터타입의 스트링을 Unicode 스트링으로 반환 |
HEXTORAW | CHAR, VARCHAR2, NCHAR, NVARCHAR2의 16진수 문자를 RAW 데이터 로 변환 |
NUMTODSINTERVAL | n을 interval day to second로 변환하여 출력 |
NUMTOYMINTERVAL | n을 interval year to month로 변환하여 출력 |
RAWTOHEX | raw 값을 VARCHAR2형 hexadecimal 값으로 변환 |
RAWTONHEX | raw 값을 NVARCHAR2형 hexadecimal 값으로 변환 |
ROWIDTOCHAR | rowid 값을 18문자 길이의 VARCHAR2 데이터타입으로 변환 |
ROWIDTONCHAR | rowid 값을 18문자 길이의 NVARCHAR2 데이터타입으로 변환 |
SCN_TO_TIMESTAMP | SCN을 timestamp로 변환 |
TIMESTAMP_TO_SCN | timestamp를 SCN으로 변환 |
TO_BINARY_DOUBLE | double-precision floating-point number를 반환 |
TO_BINARY_FLOAT | single-precision floating-point number를 반환 |
TO_CHAR(character) | NCHAR, NVARCHAR2, CLOB, NCLOB의 데이터타입을 character set으로 변환하여 VARCHAR2타입으로 반환 |
TO_CHAR(datetime) | DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE의 데이터타입을 사용자가 지정한 폼을 갖는 VARCHAR2의 데이터타입으로 변환 |
TO_CHAR(number) | NUMBER, BINARY_FLOAT, BINARY_DOUBLE의 데이터타입을 VARCHAR2 데이터타입으로 변환 |
TO_CLOB | LOB 컬럼에 있는 NCLOB나 또는 다른 문자 스트링을 CLOB로 변환 |
TO_DATE | CHAR, VARCHAR2, NCHAR, NVARCHAR2 데이터타입을 DATE 데이터타입으로 변환 |
TO_DSINTERVAL | CHAR, VARCHAR2,NCHAR,NVARCHAR2 데이터타입을 INTERVAL DAY TO SECOND 데이터타입으로 변환하는 함수 |
TO_LOB | LONG, LONG RAW 컬럼의 데이터를 LOB 데이터로 변환 |
TO_MULTI_BYTE | single 바이트 문자를 포함한 모든 문자열을 그와 대응하는 다중바이트 문자열로 변환 |
TO_NCHAR(character) | 문자스트링, clob, nclob 형식의 데이터를 national character set, 즉 nchar으로 변환 |
TO_NCHAR(datetime) | DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE, INTERVAL MONTH TO YEAR, INTERVAL DAY TO SECOND 형식의 데이터를 NCHAR 형식의 데이터로 변환 |
TO_NCHAR(number) | NUMBER, BINARY_FLOAT, BINARY_DOUBLE형식의 데이터를 national character set의 스트링으로 변환 |
TO_NCLOB | LOB 컬럼에 있는 CLOB 또는 문자열 형식의 데이터타입을 NCLOB 형식의 데이터타입으로 변환 |
TO_NUMBER | 숫자를 포함하는 CHAR, VARCHAR2, NCHAR, NVARCHAR2 형식의 문자 데이터를 NUMBER 형식의 숫자 데이터로 변환 |
TO_SINGLE_BYTE | 다중 바이트 문자열을 그에 대응하는 single byte 문자로 변환 |
TO_TIMESTAMP | CHAR, VARCHAR2, NCHAR, NVARCHAR2 데이터타입을 TIMESTAMP 데이터타입으로 변환 |
TO_TIMESTAMP_TZ | CHAR, VARCHAR2, NCHAR, NVARCHAR2 데이터타입을 TIMESTAMP TIME ZONE 데이터타입으로 변환 |
TO_YMINTERVAL | CHAR, VARCHAR2,NCHAR,NVARCHAR2 데이터타입을 INTERVAL YEAR TO MONTH 데이터타입으로 변환하는 함수 |
TRANSLATE ... USING | 텍스트 형식의 데이터를 지정한 문자 형식의 데이터로 변환 |
UNISTR | 텍스트 문자나 어떤 표현을 받아 national character set 형식(NCHAR)으로 변환 |
datatype_conversion | 데이터타입 변환표 총괄 |
기타함수(miscellaneous single row function)
Large object 함수 | |
BFILENAME | BFILE 데이터타입이 위치한 운영체제상의 파일이름과 절대경로를 지정 |
EMPTY_BLOB | LOB 변수를 초기화하기 위하여 쓰이거나, 또는 INSERT 문이나 UPDATE 문에서 empty LOB 위치를 반환 |
EMPTY_CLOB | |
Collection 함수 | |
CARDINALITY | nested_table의 원소의 수를 반환 |
COLLECT | 임의의 타입으로 컬럼 아규먼트를 취하여 선택된 행을 입력 타입으로하는 nested table을 생성 |
POWERMULTISET | nested table을 입력받아 nested table에 이를 담은 nested table을 반환 |
POWERMULTISET_BY_CARDINALITY | nested table과 cardinality를 입력받아 nested table에 이를 담은 nested table을 반환 |
SET | nested table에서 중복을 소거하여 하나의 집합으로 변환 |
Hierarchical 함수 | |
SYS_CONNECT_BY_PATH | 계층적 쿼리에서 column의 절대 경로를 char로 지정한 문자로 분리하여 반환 |
Data Mining 함수 | |
CLUSTER_ID | 지정한 집합에서 가장 확율이 높다고 예측되는 cluster ID를 NUMBER 데이터타입으로 반환 |
CLUSTER_PROBABILITY | 입력한 행에 대해 확율값을 반환 |
CLUSTER_SET | 지정한 행이 속할 가능성이 있는 클러스터에 대한 객체 varray를 반환 |
FEATURE_ID | 행에서 가장 큰 값을 가지는 feature의 ID를 반환 |
FEATURE_SET | 모든 Feature에 들어있는 객체의 varray를 반환 |
FEATURE_VALUE | 주어진 feature의 값을 반환 |
PREDICTION | DBMS_DATA_MINING 패키지에 의해서 생성되는 model과 함께 사용하는 함수로 모델에 대해서 최상의 예측값을 반환 |
PREDICTION_BOUNDS | 두 NUMBER필드 LOWER와 UPPER을 가진 객체를 반환하는데, 이는 generalized linear model에 쓰임 |
PREDICTION_COST | |
PREDICTION_DETAILS | |
PREDICTION_PROBABILITY | |
PREDICTION_SET | |
coding 함수 | |
DECODE | DECODE는 일반적인 프로그래밍 언어의 IF문을 SQL 문자 또는 PL/SQL 안으로 끌어들여 사용하기 위하여 만들어진 오라클 함수 |
DUMP | 지정한 데이터의 위치와 길이 따위를 반환 |
ORA_HASH | 해시값을 계산 |
VSIZE | 문자열의 바이트 수를 반환 |
NULL Related 함수 | |
COALESCE | 나열된 값중에서 첫번째 NULL이 아닌 값을 출력 |
LNNVL | where절의 조건이 false이면 TRUE, true이면 FALSE를 반환 |
NULLIF | 첫번째 값과 두번째 값을 비교하여 두 값이 같으면 NULL을 출력하고, 같지 않으면 첫번째 값을 출력 |
NVL | 정의한 컬럼이 0이면 지정한 값으로 대체 |
NVL2 | 함수에 사용된 3 개의 값중 첫 번째 값이 NULL값이 아니면 두 번째 값을 출력하고, 첫 번째 값이 NULL이면 세 번째 값을 출력 |
Environment & Identifier 함수 | |
SYS_CONTEXT | namespace와 관계되는 parameter의 값을 반환 |
SYS_GUID | 16바이트의 RAW값으로 된 ID를 반환 |
SYS_TYPEID | 지정 타입의 typeid를 반환 |
UID | 세션 사용자의 ID를 정수로 반환 |
USER | 세션 사용자의 이름을 VARCHAR2 데이터타입으로 반환 |
USERENV | 현재 세션에 관한 정보를 반환 |
기타 함수 | |
CASE | IF~THEN~ELSE문장과 똑같은 결과를 출력 |
TABLE 함수 | TABLE() 함수 |
DATAOBJ_TO_PARTITION | 시스템상에서 파티션된 테이블의 파티션 ID를 반환 |
XML 함수
APPENDCHILDXML | Xpath로 지정한 노드의 차일드로서 타킷 XML에 사용자가 넣은 값을 추가 |
DELETEXML | 노드 또는 타킷 XML에서 XPath로 표현된 매칭되는 노드를 제거 |
DEPTH | UNDER_PATH 또는 EQUALS_PATH 조건에서 상관관계의 레벨 수치를 반환 |
EXISTSNODE | node의 존재여부를 확인하여 그 결과를 반환 |
EXTRACT(XML) | |
EXTRACTVALUE | |
INSERTCHILDXML | XPath로 지정한 노드에 있는 타킷 XML속에 사용자가 주어진 값을 insert함 |
INSERTXMLBEFORE | XPath로 지정한 노드 앞에 있는 타킷 XML속에 사용자가 주어진 값을 insert함 |
PATH | UNDER_PATH나 EQUALS_PATH의 보조함수로서, 자원의 관계경로를 반환 |
SYS_DBURIGEN | 입력으로 컬럼, 속성, rowid를 받아 DBURIType의 데이터타입의 URI을 생성 |
SYS_XMLAGG | SYS_XMLGEN 문에서 만든 XML 문을 ROWSET 태그에 새로 추가 |
SYS_XMLGEN | 지정한 행이나 열에 대한 XML을 포함시킨 XMLTYPE을 만들어 반환 |
UPDATEXML | XMLType_instance와 XPath-value쌍을 받아 업데이트할 XMLType instance 값을 반환 |
XMLAGG | XMLELEMENT 함수에 의해서 만든 XML 태그문을 모으는 기능 |
XMLCAST | 평가할 SQL 문을 지정한 datatype으로 치부하는 함수 |
XMLCDATA | 스트링을 평가하여 CDATA 섹션을 생성 |
XMLCOLATTVAL | XML fragment를 만들어 XML 결과로 확장하여 각 XML fragment가 속성이름과 함께 column 이름을 가짐 |
XMLCOMMENT | XML 코멘트를 생성하는 함수 |
XMLCONCAT | XMLType instance를 series로 넣어 만드는 기능 |
XMLDIFF | 두 XML 도큐먼트를 비교하여 그 차이를 추출 |
XMLELEMENT | XML 태그를 붙이는 기능(XMLType을 반환) |
XMLEXISTS | Xquery가 nonempty XQuery 시퀀스를 반환하는지 여부를 체크 |
XMLFOREST | 각 아규먼트 매개변수를 XML로 변환 |
XMLPARSE | 아규먼트로부터 XML 인스턴스를 생성 |
XMLPATCH | XML 도큐먼트를 지정한 대로 변경하여 패치 |
XMLPI | identifier를 사용하여 XML processing instruction을 생성 |
XMLQUERY | SQL 문으로 XML 데이터에 질의 |
XMLROOT | XML root 정보내에서 새로운 XML값을 생성토록 함 |
XMLSEQUENCE | XMLType내의 top-level node의 varray를 반환하거나, 커서의 각행에 대한 XML 도큐먼트를 반환한다. |
XMLSERIALIZE | 주어진 내용이 담긴 스트링이나 LOB를 생성 |
XMLTABLE | XQuery 결과를 가상 테이블에서 SQL을 이용하기 위해 행과 열을 메핑 |
XMLTRANSFORM | style sheet를 인스턴스에 적용하여 XMLType을 반환 |
그룹함수중
AVG | 지정된 컬럼에 대한 조건을 만족하는 행 중에서 NULL을 제외한 평균을 구함 |
CORR | 집합 쌍의 상관관계 계수를 반환 |
CORR_S | Spearman's rho 상관관계 계수를 계산 |
CORR_K | Kendall's tau-b 상관관계 계수를 계산 |
COUNT | 쿼리를 실행한 행의 수를 반환 |
COVAR_POP | number 쌍의 집합에 대한 population covariance를 반환 |
COVAR_SAMP | number 쌍의 집합에 대한 sample covariance를 반환 |
CUME_DIST | 그룹 값 내에서 어떤 값의 cumulative distribution(누적분포)을 계산 |
DENSE_RANK | 그룹 내에서 차례로 된 행의 rank를 계산하여 NUMBER 데이터타입으로 순위를 반환 |
FIRST | 행을 서열화 시켜서 첫 번째 행을 추출 |
GROUP_ID | GROUP BY로 분리되어 복제된 번호로 복제 횟수를 구분하도록 출력 |
GROUPING | 0을 리턴하면, 해당 인수로 쓰인 값이 ROLLUP이나 CUBE 연산시 사용되었음을 의미하고, 1을 리턴하는 경우 사용되지 않았음을 나타낸다 |
GROUPING_ID | 행과 관련되는 GROUPING 비트 벡터에 대응되는 수치를 반환 |
LAST | 행을 서열화 시켜서 마지막 행을 추출 |
MAX | 지정된 컬럼에 대해 조건을 만족하는 행 중에서 최대값을 구함 |
MEDIAN | numeric 또는 datetime 데이터타입을 받아 중간값을 반환 |
MIN | 지정된 컬럼에 대해 조건을 만족하는 행 중에서 최소값을 구함 |
PERCENT_RANK | CUME_DIST 함수와 유사하게 percent_rank 값을 반환 |
PERCENTILE_CONT | 연속분포 모델에서 백분율값을 취하여 소팅한 후 백분율에 속한 값을 반환 |
PERCENTILE_DISC | 불연속분포 모델에서 백분율값을 취하여 소팅한 후 백분율에 속한 값을 반환 |
RANK | 해당 값에 대한 우선순위를 결정(중복 순위 계산함) |
STATS_BINOMIAL_TEST | 2분법 변수에 쓰일 정확한 확률를 검사하여 반환 |
STATS_CROSSTAB | 두 nominal 변수를 분석하기 위해 쓰일 crosstabulation 방법 |
STATS_F_TEST | 두 변수가 서로 얼마나 다른지 검사 |
STATS_KS_TEST | 두 샘플이 동일 population인지 여부를 비교 |
STATS_MODE | 여러값중에서 가장 발생빈도가 높은 값을 반환 |
STATS_MW_TEST | 두 독립된 샘플에서 null hypothesis를 검사하기 위하여 비교 |
STATS_ONE_WAY_ANOVA | 두 변수에 대한 차이의 어림을 비교하여 차이점을 검사 |
STATS_T_TEST_ONE | 중앙값의 차이에 대한 중요도를 측정 |
<dd>STATS_T_TEST_INDEP</dd> | 중앙값의 차이에 대한 중요도를 측정 |
<dd>STATS_T_TEST_INDEPU</dd> | 중앙값의 차이에 대한 중요도를 측정 |
STATS_WSR_TEST | 샘플 mean을 비교 |
STDDEV | 표준 편차를 구함 |
STDDEV_POP | population 표준편차 |
STDDEV_SAMP | cumulative sample 표준편차 |
SUM | NULL을 제외한 합계 |
VAR_POP | 집합에서 null을 제외한 모집단 분산값을 반환 |
VAR_SAMP | 집합에서 null을 제외한 샘플 분산값을 반환 |
VARIANCE | 분산값을 반환 |
GROUPING SETS | GROUP BY 절에서 그룹 조건을 여러 개 지정할 수 있는 함수 |
그룹함수중
AVG | 지정된 컬럼에 대한 조건을 만족하는 행 중에서 NULL을 제외한 평균을 구함 |
CORR | 집합 쌍의 상관관계 계수를 반환 |
COUNT | 쿼리를 실행한 행의 수를 반환 |
COVAR_POP | number 쌍의 집합에 대한 population covariance를 반환 |
COVAR_SAMP | number 쌍의 집합에 대한 sample covariance를 반환 |
CUME_DIST | 그룹 값 내에서 어떤 값의 cumulative distribution(누적분포)을 계산 |
DENSE_RANK | 그룹 내에서 차례로 된 행의 rank를 계산하여 NUMBER 데이터타입으로 순위를 반환 |
FIRST | 행을 서열화 시켜서 첫 번째 행을 추출 |
FIRST_VALUE | 정렬된 값 중에서 첫 번째 값을 반환 |
LAG | 현재 행을 기준으로 이전 값을 참조하는 함수 |
LAST | 행을 서열화 시켜서 마지막 행을 추출 |
LAST_VALUE | 정렬된 값 중에서 마지막 값을 반환 |
LEAD | 현재 행을 기준으로 이후의 값을 참조하는 함수 |
MAX | 지정된 컬럼에 대해 조건을 만족하는 행 중에서 최대값을 구함 |
MEDIAN | numeric 또는 datetime 데이터타입을 받아 중간값을 반환 |
MIN | 지정된 컬럼에 대해 조건을 만족하는 행 중에서 최소값을 구함 |
NTILE | 출력 결과를 사용자가 지정한 그룹 수로 나누어 출력 |
PERCENT_RANK | CUME_DIST 함수와 유사하게 percent_rank 값을 반환 |
PERCENTILE_CONT | 연속분포 모델에서 백분율값을 취하여 소팅한 후 백분율에 속한 값을 반환 |
PERCENTILE_DISC | 불연속분포 모델에서 백분율값을 취하여 소팅한 후 백분율에 속한 값을 반환 |
RANK | 해당 값에 대한 루선순위를 결정(중복 순위 계산함) |
RATIO_TO_REPORT | 데이터 합에 대한 구성비를 계산 |
REGR_AVGX | y,x 둘 다 null이 아닌 경우 x를 기준으로 평균을 계산 |
<dd>REGR_AVGY</dd> | y,x 둘 다 null이 아닌 경우 y를 기준으로 평균을 계산 |
<dd>REGR_COUNT</dd> | y,x 둘 다 null이 아닌 경우 카운트를 시작 |
<dd>REGR_INTERCEPT</dd> | 수학의 y축을 계산 |
<dd>REGR_R2</dd> | Determination의 계수 |
<dd>REGR_SLOPE</dd> | 직선의 기울기를 계산 |
<dd>REGR_SXX</dd> | null 제거 후 계산 |
<dd>REGR_SXY</dd> | null 제거 후 계산 |
<dd>REGR_SYY</dd> | null 제거 후 계산 |
ROW_NUMBER | 분할별로 정렬된 결과에 대해 순위를 부여하는 기능 |
STDDEV | 표준 편차를 구함 |
STDDEV_POP | population 표준편차 |
STDDEV_SAMP | cumulative sample 표준편차 |
SUM | NULL을 제외한 합계 |
VAR_POP | 집합에서 null을 제외한 모집단 분산값을 반환 |
VAR_SAMP | 집합에서 null을 제외한 샘플 분산값을 반환 |
VARIANCE | 분산값을 반환 |
TOP_N 분석 | |
object reference 함수
DEREF | REF 타입의 컬럼 데이터를 읽을 때는 반드시 DEREF() 함수를 사용 |
MAKE_REF | 기본키를 바탕으로한 뷰나 테이블의 행에 대해서 REF를 생성 |
REF | 객체 테이블 또는 뷰의 행과 결합된 상관관계 변수 |
REFTOHEX | 16진수의 문자값으로 변환하여 REF를 반환 |
VALUE 함수 | 객체 테이블의 테이블 별칭을 인자로 받아 쿼리한 행에서 상관관계되는 값을 객체테이블에서 반환 |
MODEL 함수
model 절에서만 사용하는 model 함수는 다음과 같다.
CV | 왼쪽에서 오른쪽 룰로 dimension 컬럼이 carry된 현재값을 반환 |
ITERATION_NUMBER | model rule에서 완성된 iteration의 수를 반환하며, 0이 첫번째 반복을 의미함 |
CURRENTV(dimension_column) | dimension 컬럼의 값이 존재하면 그 값을 반환해 준다. |
PRESENTNNV(cell, expr1, expr2) | Cell 값이 NOT NULL이면 expr1을 반환하고, NULL이면 expr2를 반환한다. |
PRESENTV(cell, expr1, expr2) | spreadsheet 절에 의해 실행되어진 dimension_column의 값 중에 Cell과 동일한 값이 존재하면 expr1을 반환하고, 존재하지 않으면 expr2를 반환한다. |
PREVIOUS | SELECT 문에서 model절을 사용하는데 쓰이며, 반복이 시작될때마다 매번 cell_reference값을 반환 |
메타문자와 정규 표현식 함수 | regexp_like() regexp_instr() regexp_substr() regexp_replace() |
윈도우(windowing) 분석 함수
윈도우 분석함수 | 부분 합을 계속 더해 나감, sum은 전체 합계를 구함 |
'IT 낙서장' 카테고리의 다른 글
decode 없이 오라클 행 열 바꾸기2 (0) | 2014.01.24 |
---|---|
오라클 행 열 바꾸는거 decode max 안쓰고 (0) | 2014.01.24 |
행열 바꾸는 오라클 로직 (0) | 2014.01.24 |
jquery 꺽세 치환 (0) | 2014.01.24 |
특수태그 (0) | 2014.01.24 |