DB 160630
문자함수
-- 서버에게 계산하기보단 클라이언트에게 계산을 시키는 것이 좋다.*
행 | 명령문 | 설명 | 출력 |
477: | lower |
소문자 | hello |
477: | upper |
대문자 | HELLO |
478: | initcap |
첫글자를 대문자로 | Hello World |
479: | concat |
문자를 합체 | Helloworld |
480: | substar |
시작지점 시정, 읽어주는 글자 수 | llo world / rld |
481: | length |
글자 갯수 | 11 |
482: 483: | instr |
다음 글자가 몇번째에 있는지 셈, 시작지점 | 5 / 8 |
484: | lpad | 해당 숫자만큼의 자리보다 남은 곳은 지정해준 글자로 채움 | *****hello |
485: | trim | 앞에 공백을 뱉어줌(없애줌) | ab c |
486: | replace | 지정한 글자를 다른 글자로 수정 | 010-1111-1111 |
숫자함수
행 |
명령문 |
설명 |
출력 |
495: |
round |
반올림, 반올림을 적용시킬 위치 |
45.68 / 46 / 50 |
498: |
trunc |
버림, 버림을 적용시킬 위치 |
45 / 45.67 |
499: |
mod |
나누고 남은 나머지 값 |
7.5 / 1 |
날짜함수
-- 날짜 유효범위는 BC 4712 ~ AD 999년*
행 |
명령문 |
설명 |
출력값 |
503: |
alter session set nls_date_format='yyyy-mm-dd'; |
날짜 스타일 설정 |
session SET이(가) 변경되었습니다. |
504: |
sysdate |
현재 시스템 날짜 및 시간 |
2016-06-30 / 2016-07-02 / 2016-06-28 |
510: |
months_between(sysdate, '2015-1-1') |
현재 시스템 날짜부터~ 까지의 월 차이 |
17.96290173237753882... |
512: |
last_day |
해당 월의 마지막 날 |
2016-06-30 |
512: | next_day | 해당 날짜에서 지정해준 값의 가장 가까운 날 | 2016-07-01 |
형변환 함수
-- 문자인 숫자는 자동적으로 숫자로 형변환 시켜준다.*
행 |
명령문 |
설명 |
출력값 |
521: |
to_date(' A ') |
DATE형식의 타입으로 강제 형변환 시켜줌 |
현재날짜, 2016-1-1 |
526: |
to_char( A , B ) |
문자형식의 타입으로 강제형변환 시켜줌. 뒤에 '999,999,999'는 구분콤마를 만들어줌. ex) 1,234,567 |
12,345,678 |
530: |
to_number(' A ') |
숫자형식의 타입으로 강제형변환 시켜줌 |
120 |
기타 함수
행 |
명령문 |
설명 |
출력 |
539: |
rank() |
순위를 결정해 준다. 단 동점자가 있을 경우 그 다음 등수로 넘어간다. ex) 14등 14등 16등 17등… |
|
544: |
dense_rank() |
순위를 결정해 준다. ex) 14등 14등 15등 16등… |
|
550: |
nvl( A , B ) |
null인 값을 대처해주는 명령문. (A,B)이면 A에서 null인 값을 B로 바꾸어준다. |
|
559: |
nvl2( A , B , C ) |
null인 값과 null이 아닌 값을 대처해주는 명령문. (A,B,C)이면 A의 값이 null일 경우 C, 아니면 B의 값으로 바꾸어준다. |
|
563: | nullif( A , B ) | A와 B의 값이 일치 할 경우 null을 주고, 아니면 A의 값을 준다. |
|
조건 표현식
'📁 공부정리 > DB' 카테고리의 다른 글
DB160705 일단 쓰고보자 (SQL / PL) (0) | 2016.07.05 |
---|---|
DB160705 아몰라 일단 쓰고봐 노트 (0) | 2016.07.05 |
DB 160628 (0) | 2016.06.28 |