- 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
'자격증 > SQLD' 카테고리의 다른 글
SQLD(4)-SQL활용1 (0) | 2021.08.13 |
---|---|
SQLD(3)-SQL기본3 (0) | 2021.08.12 |
SQLD(3)-SQL기본1 (0) | 2021.08.11 |
SQLD(2)-데이터 모델과 성능 (0) | 2021.08.10 |
SQLD(1)-데이터 모델링 (0) | 2021.08.09 |