[SQLD] 숫자 함수 / 문자열 함수 / 날짜 함수 / 집계 함수

hwwwa·2022년 6월 1일
0

🍊 SQLD

목록 보기
9/16

숫자 함수

  • ROUND: 숫자를 소수 m 자리에서 반올림하여 리턴 (m default: 0). 자릿수 확인 필요
    • ROUND(138.94) 인수 : ROUND(138.94) 1 → 138.9
      -1 0 1 2
  • Ceil/Ceiling: 숫자보다 크거나 같은 최소 정수를 리턴
  • FLOOR: 숫자보다 작거나 같은 최대 정수를 리턴
  • TRUNC: 숫자를 소수 m 자리에서 잘라서 리턴 (m default: 0)

문자열 함수

  • upper / lower
  • LPAD(값, 총문자길이, 채움문자) / RPAD(값, 총문자길이, 채움문자)
    • 지정한 길이 만큼 왼쪽 혹은 오른쪽부터 특정 문자로 채워줌. 채움문자 defalt 공백
  • TRIM(문자열): 양쪽 공백 제거
  • LTRIM(문자열, 옵션) / RTRIM(문자열, 옵션)
    • 옵션 미지정시 왼쪽 혹은 오른쪽 공백 제거, 옵션 지정시 반복적인 해당 문자 제거
  • SUBSTR(문자열, 시작위치, 길이)
    • 문자열 자르기. 길이 생략시 시작위치부터 끝까지.
    • 시작위치에 뒤에서부터 인덱스번호 사용 가능 (음수)
  • INSTR(문자열, 찾을 문자열, 시작 위치, 발생 횟수)
    • 문자열에서 찾고자하는 문자열과 일치하는 위치를 반환
    • 발생횟수는 몇 번째 일치하는 지 명시
    • 시작위치와 발생횟수 미지정시 default 1
  • REPLACE(문자열, 대체될문자열, 대체할문자열)

날짜 함수

  • 날짜 데이터 + 100 → 100일 이후. 숫자를 day로 인식함
    1/24/60 → 1분
    1/24/(60/10) → 10분
  • TO_CHAR
  • TO_DATE
  • SYSDATE (Oracle)
    GETDATE(SQLServer)

집계함수 ⭐️

  • SUM, AVG는 NULL값을 제외한 계산 결과를 출력
  • AVG(COUNT(*))와 같이 중첩된 그룹함수의 최종 결과물은 1건이 될 수 밖에 없음
    • GROUP BY절에 기술된 두 컬럼은 SELECT 절에 기술될 수 없음
  • NULL이 있는 컬럼에서
    ABCA + B + C
    NULLNULL1NULL
    3227
    NULL23NULL
    • SUM(A) → 3
      SUM(B) → 4
    • COUNT(A) → 1
    • COUNT(*) → 3
    • SUM(A+B+C) → 7
    • SUM(A) + SUM(B) + SUM(C) → 13

0개의 댓글