😺Data Base/😻 SQLD

[SQL] 단일 행 함수

디카페인라떼 2022. 11. 3. 23:13

본 강의를 수강 후 정리한 글입니다 .

https://www.youtube.com/playlist?list=PLlCujDgOz8x6nDWtRr5AlHWB9Xp-Lxf-z 

 

01. SQL 기본

#SQL기본 #SQLD #SQLP 이론적인 내용이 지루하다고 생각할 수도 있습니다. 하지만 SQL을 현장에서 능숙하게 활용할 수 있기 위해서는 기본적인 지식에 대한 기초를 튼튼하게 다져야 할 필요가 있습니

www.youtube.com


1. 문자 함수

  • LOWER ('winner') : winner : 모두 소문자
  •  UPPER ('winner') : WINNER : 모두 대문자
  •  INICAP ('WINNER') : Winner : 첫글자만 대문자
  •  CONCAT ('WIN','NER') : WINNER : 주어진 문자열들을 연결해서 하나의 값으로
  •  SUBSTR ('WINNER',1,3) : WIN : SUBSTR ('문자열',시작,개수)주어진 문자열들을 시작위치에서 갯수만큼/ 갯수가 없는 경우 끝까지 / -시작은 뒤로부터 시작해서 갯수만큼
  •  INSTR ('WINNER','N',1,2) : 4 : INSTR('문자열','문자',시작,순서) : 해당 순서에대한 위치 값을 반환
  •  LENGTH ('WINNER') : 6 : 문자열/숫자 관계없이 전체길이
  •  ASCII ('W') : 87 : 문자열의 아스키 코드
  •  CHR (87) : W : 아스키코드에 해당하는 문자
  •  LPAD (912,7,'0') : 0000912 : LPAD(column,길이,문자) : 컬럼이 지정한 길이가 되도록 문자를 채운다/ 컬럼의 데이터타입은 상관없음.
  •  RPAD (912,7,'0') : 9120000
TRIM
  • 문자열로부터 특정 문자를 받아서 없앰
    • LTRIM ('CLERK','ORACLE') : K  : LTRIM(문자열, 제거할 문자)
    • RTIRIM ('CLERK','KOREA') : CL
    • TRIM (LEADING 'A' FROM 'AABB') : BB : 주어진 문자의 앞에서부터 찾아서 없애라
    • TRIM (TRAILING 'B' FROM 'AABB') : AA : 주어진 문자열의 뒤에있는 문자를 찾아서 없애라
    • TRIM ('A' FROM 'AACADAA') : CAD : 주어진 문자열의 양옆 양 끝에서 찾아서 없애라
    • REPLACE ('EXPORT','EX','IM') : IMPORT : REPLACE(문자열, 문자1, 문자2) : 문자열에서 문자1을 찾아 문자2로 바꾼다.
    • TRANSLATE ('APPLE','PL','#$') : A##$E : 문자열의 모든 P가 #으로 바뀜

 

2. 숫자 함수

  • ROUND (567.678, 2) : 567.68 : 소수점 이하 둘째자리 반올림
  • TRUNC (567.678, 2) : 567.67 : 소수점 이하 둘때자리 아래 버림
  • CEIL (99.1) : 100 : 소수점 이하 무조건 올림
  • FLOOR (99.99) : 99 : 소수점 이하 무조건 버림
  • MOD(5,2) : 1 : 숫자1을 숫자2로 나눈 수의 나머지
  • ABS(-7) : 7 : 절대값
  • SIGN(500-700) : -1 : 뺄셈의 결과가 0보다 적을때 -1 리턴/ 0보다 크면  +1 / 0이면 0
  • POWER(10,2) : 100 : 10의 2승

 

3. 날짜 함수

  • MONTHS_BTWEEN(dt1,dt2) : dt1과 dt2 사이의 개월 수
  • ADD_MONTHS (dt, n) : dt에 n개월을 더한 날짜
  • NEXT_DAY(dt,N),N=요일 구분 : dt이후의 해당 요일의 날짜 / N은 1~7
  • LAST_DAY(dt) : 해당 월의 마지막 날짜
  • 오라클은 세기, 년, 월, 일, 시, 문, 초 형식의 날짜를 내부 숫자 형태로 저장.
    즉, 정수 계산이 가능 함.
    • DATE + number
    • DATE - number
    • DATE + number/24(시간)
    • DATE + number/24/60 (분)
    • DATE1 - DATE2

 

 

4. 변환 함수

  • 자동으로 변환되지 않을 경우엔 변환 함수 사용
  •  NUMBER  <-- TO_NUMBER -- CHARACTER -- TO_DATE --> DATE
                          -- TO_CHAR -->                           <--TO_CHAR --

 

5. 일반 함수

  • NVL (column, expr) : 컬럼의 밸류가 NULL일 때 두번째 값
  • NVL2 (column, expr1, expr2) : 컬럼의 밸류가 NULL이면 두번째, 아니면 세번째 값
  • NULLIF (expr1, expr2) : 두개의 값이 서로 같으면 NULL, 서로 다르면 첫번째 값
  • COALESCE (expr1, expr2, ...) : 인자들중 최초로 NULL이 아닌걸 리턴
  • GREATEST (expr1, expr2, ...) : 주어진 인자 중 가장 큰 값 리턴
  • LEAST (expr1, expr2, ...) : 주어진 인자 중 가장 작은 값 리턴
  • DECODE : 각 조건에 따라 연산
    • CASE WHEN / ELSE

'😺Data Base > 😻 SQLD' 카테고리의 다른 글

[SQL] JOIN  (0) 2022.11.04
[SQL] 다중 행 함수  (0) 2022.11.03
[SQL] WHERE 절  (0) 2022.11.02
[SQL] SQL 종류 - DML / TCL / DCL / TRANSACTION  (0) 2022.11.02
[SQL] 제약조건 / VIEW / SEQUENCE / SYNONYM / INDEX  (0) 2022.11.01