** Single-Row Function
1. Character function
* inicap : 문자열의 첫번째 문자만 대문자로 변환
ex)inicap('student') -> 'Student'
* lower : 문자열 전체를 소문자로 변환
ex)lower('STUDENT') -> 'student'
* upper : 문자열 전체를 대문자로 변환
ex)upper('student') -> 'STUDENT'
* length : 문자열 길이를 반환
ex)length('student') -> 7
* lengthb : 문자열 바이트 수를 반환
ex)lengthb('홍길동') -> 6
* concat : 두 문자열을 결합. || 와 동일
ex)concat('sql','plus') -> 'sqlplus'
* substr : 특정 문자 또는 문자열 일부를 추출
ex)substr('SQL*PLUS',5,4) -> 'Plus'
ex)substr('SQL*PLUS',-5,4) -> '*PLU'
* substrb : 특정 문자 또는 문자 바이트 일부를 추출
* instr : 특정 문자가 출현하는 첫번째위치 반환
ex)instr('SQL*Plus','*') -> 4
* lpad : 오른쪽 정렬 후 왼쪽에 지정한 문자 삽입
ex)lpad('sql',5,'*') -> '**sql'
* rpad : 왼쪽 정렬 후 오른쪽에 지정한 문자 삽입
ex)rpad('sql',5,'*') -> 'sql**'
* ltrim : 왼쪽의 지정 문자를 삭제
ex)ltrim('*sql','*') -> 'sql'
* rtrim : 오른쪽의 지정 문자를 삭제
ex)rtrim('sql*','*') -> 'sql'
* trim : 양쪽 공백 삭제
ex)trim(' sql* ') -> 'sql*'
2. Number function
* ROUND : 지정한자리이하에서 반올림
ex)ROUND(123.17,1) ->123.2
* TRUNC : 지정한 자리 이하에서 절삭
ex)TRUNC(123.17,1) ->123.1
* MOD : m을 n 으로 나눈 나머지 값
ex)MOD(12,10) -> 2
* CEIL : 지정한 값보다 큰 수 중에서 가장 작은 정수
ex)SEIL(123.17) -> 124
* FLOOR : 지정한 값보다 작은 수 중에서 가장 큰 정수
ex)FLOOR(123.17) -> 123
3. Date function
* SYSDATE : 시스템의 현재 날짜 : 날짜
* MONTHS_BETWEEN : 날짜와 날짜 사이의 개월을 계산 : 숫자
* ADD_MONTHS : 날짜에 개월을 더한 날짜 계산 : 날짜
* NETX_DAY : 날짜후의 첫 월요일 날짜를 계산 : 날짜
* LAST_DAY : 월의 마지막 날짜를 계산 : 날짜
* ROUND : 날짜를 반올림 : 날짜 (정오를 넘으면 다음날을 출력한다)
* TRUNC : 날짜를 절삭 : 날짜 (시간정보와 상관없이 당일 날을 출력한다)
4. conversion function
* TO_CHAR : 숫자,날짜를 문자타입으로 변환
ex)TO_CHAR('05-03','YYYY-MM') -> 2007-12
* TO_NUMBER : 문자열을 숫자타입으로 변환
ex)TO_NUMBER(1000,'9,999') -> 1,000
* TO_DATE : 문자열을 날짜타입으로 변환
ex)TO_DATE('05/03','YYYY-MM') -> 2007-12
5. General function
* NVL : NULL 값을 0또는 다른 값으로 변환하는 함수
* NVL2 : NVL2(항목, 결과1, 결과2)
1) 항목이 NULL 이면 결과2, 아니면 결과 1
* DECODE
DECODE (expression | column, SEARCH1, RESULT1 [, SEARCH2, RESULT2,…,] [, DEFAULT])
1) 표현식 또는 컬럼의 값이 SEARCH1 값과 일치하면 RESULT1 값 반환하고 SEARCH2 값과 일치하면 RESULT2 값 반환한다.
2) 일치하는 값이 없거나 NULL 인 경우에는 기본 값 반환
3) 기본 값이 없는 경우에는 NULL 반환
* CASE
CASE expression WHEN comparison_exp1 THEN return_exp1 [ WHEN comparison_exp2 THEN return_exp2 WHEN comparison_exp3 THEN return_exp3 ELSE else_expression] END
1. Character function
* inicap : 문자열의 첫번째 문자만 대문자로 변환
ex)inicap('student') -> 'Student'
* lower : 문자열 전체를 소문자로 변환
ex)lower('STUDENT') -> 'student'
* upper : 문자열 전체를 대문자로 변환
ex)upper('student') -> 'STUDENT'
* length : 문자열 길이를 반환
ex)length('student') -> 7
* lengthb : 문자열 바이트 수를 반환
ex)lengthb('홍길동') -> 6
* concat : 두 문자열을 결합. || 와 동일
ex)concat('sql','plus') -> 'sqlplus'
* substr : 특정 문자 또는 문자열 일부를 추출
ex)substr('SQL*PLUS',5,4) -> 'Plus'
ex)substr('SQL*PLUS',-5,4) -> '*PLU'
* substrb : 특정 문자 또는 문자 바이트 일부를 추출
* instr : 특정 문자가 출현하는 첫번째위치 반환
ex)instr('SQL*Plus','*') -> 4
* lpad : 오른쪽 정렬 후 왼쪽에 지정한 문자 삽입
ex)lpad('sql',5,'*') -> '**sql'
* rpad : 왼쪽 정렬 후 오른쪽에 지정한 문자 삽입
ex)rpad('sql',5,'*') -> 'sql**'
* ltrim : 왼쪽의 지정 문자를 삭제
ex)ltrim('*sql','*') -> 'sql'
* rtrim : 오른쪽의 지정 문자를 삭제
ex)rtrim('sql*','*') -> 'sql'
* trim : 양쪽 공백 삭제
ex)trim(' sql* ') -> 'sql*'
2. Number function
* ROUND : 지정한자리이하에서 반올림
ex)ROUND(123.17,1) ->123.2
* TRUNC : 지정한 자리 이하에서 절삭
ex)TRUNC(123.17,1) ->123.1
* MOD : m을 n 으로 나눈 나머지 값
ex)MOD(12,10) -> 2
* CEIL : 지정한 값보다 큰 수 중에서 가장 작은 정수
ex)SEIL(123.17) -> 124
* FLOOR : 지정한 값보다 작은 수 중에서 가장 큰 정수
ex)FLOOR(123.17) -> 123
3. Date function
* SYSDATE : 시스템의 현재 날짜 : 날짜
* MONTHS_BETWEEN : 날짜와 날짜 사이의 개월을 계산 : 숫자
* ADD_MONTHS : 날짜에 개월을 더한 날짜 계산 : 날짜
* NETX_DAY : 날짜후의 첫 월요일 날짜를 계산 : 날짜
* LAST_DAY : 월의 마지막 날짜를 계산 : 날짜
* ROUND : 날짜를 반올림 : 날짜 (정오를 넘으면 다음날을 출력한다)
* TRUNC : 날짜를 절삭 : 날짜 (시간정보와 상관없이 당일 날을 출력한다)
4. conversion function
* TO_CHAR : 숫자,날짜를 문자타입으로 변환
ex)TO_CHAR('05-03','YYYY-MM') -> 2007-12
* TO_NUMBER : 문자열을 숫자타입으로 변환
ex)TO_NUMBER(1000,'9,999') -> 1,000
* TO_DATE : 문자열을 날짜타입으로 변환
ex)TO_DATE('05/03','YYYY-MM') -> 2007-12
5. General function
* NVL : NULL 값을 0또는 다른 값으로 변환하는 함수
* NVL2 : NVL2(항목, 결과1, 결과2)
1) 항목이 NULL 이면 결과2, 아니면 결과 1
* DECODE
DECODE (expression | column, SEARCH1, RESULT1 [, SEARCH2, RESULT2,…,] [, DEFAULT])
1) 표현식 또는 컬럼의 값이 SEARCH1 값과 일치하면 RESULT1 값 반환하고 SEARCH2 값과 일치하면 RESULT2 값 반환한다.
2) 일치하는 값이 없거나 NULL 인 경우에는 기본 값 반환
3) 기본 값이 없는 경우에는 NULL 반환
* CASE
CASE expression WHEN comparison_exp1 THEN return_exp1 [ WHEN comparison_exp2 THEN return_exp2 WHEN comparison_exp3 THEN return_exp3 ELSE else_expression] END
'Database > Oracle' 카테고리의 다른 글
hint 종류 (0) | 2010.03.30 |
---|---|
대량의 데이터 INSERT(HINT) (0) | 2010.02.01 |
환경알기 (0) | 2009.12.30 |
to_char format (0) | 2009.12.30 |
Group Fucntion (0) | 2009.12.30 |