자격증/SQLD

SQLD(2)-SQL기본2

jhs0129 2021. 8. 12. 11:45
320x100
반응형
  • WHERE문

비교연산자

부정비교연산자 - !=, ^=, <>, NOT COLUMN_NAME 네개모두 같음

논리연산자 - AND, OR, NOT

sql연산자 - LIKE 'VALUE', (NOT) BETWEEN A AND B, (NOT) IN(list), IS (NOT) NULL

 

 * LIKE문은 와일드카드(%, _)를 사용 - % : 어떤문자 모든것 포함 , _ : 하나의 단일 문자포함

 * BETWEEN은 이상, 이하 -> NOT이 붙으면 당연히 포함 X

  • NULL함수

NVL - NULL이면 다른값으로 변경, NVL(COLUMN_NAME, VALUE)

NVL2 - NVL+DECODE, NVL2(COLUMN_NAME, 1, 0) NULL이 아니면 1, NULL이면 0

NULLIF - 두개 값이 같으면 NULL 다르면 첫번째 값, NULLIF(exp1, exp2)

COALESCE - NULL이아닌 첫 값을 반환, COALESCE(exp1, exp2, exp3.....)

 

  • GROUP 연산

소규모의 행을 그룹화하여 값을 계산, 집계함수를 사용한 칼럼 제외하고 GROUP BY 로 묶음,

HAVING절을 사용해서 조건을 걸 수 있음

ORDER BY로 정렬(무조건 마지막에 작성)

* 집계함수 - COUNT, SUM, AVG, MAX, MIN, STDDEV(표준편차 계산), VARIAN(분산 계산)

 

  • SELECT문 실행 순서

SELECT C1

FROM TABLE

WHERE ~ 

GROUP BY C1

HAVING ~

ORDER BY C1

 

FROM-> WHERE -> GROUP BY -> HAVING -> ORDER BY -> SELECT

 

  • 형변환

두개의 데이터 타입이 일치하도록 형을 변환

명시적 - 함수를 호출하여 개발자가 직접 변경

           TO_NUMBER(문자열)

           TO_CHAR(숫자 혹은 날짜, [FORMAT])

           TO_DATE(문자열, [FORMAT])

 

암시적 - DBMS가 자동으로 변경해줌

 

  • 내장함수

형변환함수, 문자열 및 숫자형 함수, 날짜함수

문자열 함수 설명
ASCII(문자) 문자 혹은 숫자르 ASCII코드로 변경
CHAR(ASCII 코드값) ASCII코드를 문자로 변경
SUBSTR(문자열, m, n) 문자열의 m부터 n개를 자름
CONCAT(문자열1, 문자열2) 문자열두개 이어붙힘
LOWER(문자열) 문자열 전부 소문자로
UPPER(문자열) 문자열 준부 대문자로
LTRIM(문자열, 지정문자) 왼쪽에서 지정문자 삭제
지정문자 생략시 공백으로 지정
RTRIM(문자열, 지정문자) 오른쪽에서 지정문자 삭제
TRIM(문자열, 지정문자) 양쪽에서 지정문자 삭제
LENGTH/LEN(문자열) 길이 반환(공백 포함)

문자열 함수

숫자형 함수 설명
ABS(숫자) 절대값 반환
SIGN(숫자) 양수 음수 0 구분
MOD(숫자1, 숫자2) 숫자1로 숫자2를 나누어 나머지 계산
CEIL/CEILING(숫자) 숫자보다 크거나 같은 최소의 정수 구함
FLOOR(숫자) 숫자보다 작거나 같은 최대의 정수 구함
ROUND(숫자, m) 소수점m자리에서 반올림 default =0
TRUNC(숫자, m) 소수점m자리에서 버림 default =0

숫자형함수

날짜형 함수 설명
SYSDATE 오늘 날짜 구함
EXTRACT( 'YEAR' | 'MONTH' | 'DATE' from ~ ) 날짜에서 년, 월, 일을 구함

날자형함수

  • DECODE, CASE

DECODE - NVL2와 문법은 같음 IF문의 함수, DECODE(exp, condition, true, false)

 

CASE [expression]

  WHEN condition THEN result

  ELSE

END

320x100
반응형