21.1.29(금) DB/DML(SELECT)_함수(1)

민국·2021년 1월 29일
0

단일행 함수(1)

1. 문자열 함수

1) INSTR

: 문자열로부터 특정 문자의 위치값 반환
[표현법] (STR, '문자', (찾을 위치의 시작 값), (순번))
=> 결과값 NUMBER

  • 찾을 위치의 시작값
    1: 앞에서부터 찾겠다.(생략시 기본값)
    -1: 뒤에서부터 찾겠다.

2) SUBSTR

: 문자열로부터 특정 문자열을 추출해서 반환(자바로 치면 문자열.substring(~~))
[표현법] SUBSTR(STR, POSITION, [LENGTH])
=> 결과값 CHARACTER

  • STR : '문자열' 또는 문자타입 컬럼
    POSITION : 문자열을 추출할 시작위치 값(음수는 뒤에서부터)
    LENGTH : 추출한 문자 갯수 (생략시 끝까지 의미)

3) LPAD / RPAD

: 문자에 대해 통일감있게 보여주고자 할 때 사용
제시한 문자열에 임의의 문자를 왼쪽 또는 오른쪽에 덧붙여서 최종 N길이만큼의 문자열을 반환

[표현법] LPAD/RPAD(STR, 최종적으로 반환할 문자의 길이(바이트), (덧붙이고자하는 문자!)
=> 결과값 CHARACTER

4) LTRIM / RTRIM

: 문자열의 왼쪽 또는 오른쪽에서 제거시키고자하는 문자들을 찾아서 제거한 나머지 문자열을 반환

[표현법] LTRIM/RTRIM(STR, (제거시키고자 하는 문자))
=> 결과값 CHARACTER

5) TRIM

: 문자열의 앞/뒤/양쪽에 있는 특정 문자를 '제거'한 나머지 문자열 반환

[표현법] TRIM ((BOTH,LEADING,TRAILING), (제거시키고 싶은 문자), FROM STR)

  • BOTH : 양쪽 다 제거
  • LEADING: 앞쪽만 제거
  • TRAILING: 뒤쪽만 제거

6) LOWER / UPPER / INITCAP

: LOWER : 다 소문자로 / UPPER : 다 대문자로 / INITCAP : 각 단어 앞글자만 대문자로

[표현법] LOWER/UPPER/INITCAP (STR)
=> 결과값 CHARACTER

7) CONCAT

: 전달된 두개의 문자열 하나로 합친 결과 반환
[표현법] CONCAT(STR, STR) (두개만 사용가능)
=> 결과값 CHARACTER

8) REPLACE

: STRING으로부터 STR1을 찾아서 STR2로 바꾼 문자열을 반환

[표현법] REPLACE(STRING, STR1, STR2)
=> 결과값 CHARACTER

2. 숫자함수

1) ABS

: 절대값 구해주는 함수

[표현법] ABS(NUMBER)

2) MOD

: 두 수를 나눈 나머지 값 반환

[표현법] MOD(NUM, NUM)

3) ROUND

: 반올림 함수

[표현법] ROUND(NUM,(반올림 해줄 위치))

4) CEIL

: 무조건 올림처리해주는 함수

[표현법] CEIL(NUM)

5) FLOOR

: 소수점 아래 무조건 버려버리는 함수

[표현법] FLOOR(NUM)

6) TRUNC

: 위치 지정가능한 버림처리해주는 함수

[표현법] TRUNC (NUM, 위치)

3. 날짜 관련 함수

1) SYSDATE

:현재 시스템 날짜 반환

[표현법] SELECT SYSDATE
=> 결과값: DATE

2) MONTHS_BETWEEN

: 두 날짜 사이의 개월 수 반환

[표현법] MONTHS_BETWEEN(DATE1, DATE2)
=> 결과값: NUM

3) ADD_MONTHS

: 특정 날짜에 해당 숫자만큼의 개월수를 더한 날짜 반환

[표현법] ADD_MONTHS(DATE, NUM)
=> 결과값: DATE

4) NEXT_DAY

: 특정날짜에서 가장 가까운 해당 요일을 찾아 그 날짜 반환

[표현법] NEXT_DAY(DATE, 요일(문자|숫자)
=> 결과값: DATE

  • 참고) 언어변경 : ALTER SESSION NLS_LANGUAGE = KOREAN, AMERICAN...

5) LAST_DAY

: 해당 특정 날짜 달의 마지막 날짜를 반환

[표현법] LAST_DAY(DATE)
=> 결과값: DATE

profile
새싹개발자

0개의 댓글