비교 연산자
- = / != <> / > / >= / > / >=
논리 연산자
- AND / OR / NOT
SQL 연산자
- BETWEEN a AND b : a와 b의 사이 값. a, b 포함
- IN (a, b, c, ..., n) : a, b, c... n 중 하나와 일치하면 참
- LIKE : 문자 패턴과 부분적으로 일치하면 참 - 문자패턴 %:길이에 상관없음, _: 한글자
- IS NULL : NULL 이면 참
- IS NOT NULL : NULL 이 아니면 참
집합 연산자
집합 연산의 대상이 되는 두 테이블의 컬럼수와 대응되는 컬럼끼리의 데이터 타입이 동일해야 함
- UNION : 두 집합에 대해 중복되는 행을 제외한 합집합
- UNION ALL : 두 집합에 대해 중복되는 행을 포함한 합집합
- MINUS : 두 집합간의 차집합
- INTERSECT : 두 집합간의 교집합 (공통인 부분)
-- 두 질의의 컬럼수가 같아야함. 두집합 연산의 대상, studno, name
-- UNION: 합집합, UNION ALL: 공통인 부분도 다 보여줘라
SELECT studno , name
FROM stud_heavy
UNION ALL
SELECT studno , name
FROM stud_101;
-- INTERSECT: 교집합, 공통 요소만 get
SELECT studno , name
FROM STUD_HEAVY
INTERSECT
SELECT studno , name
FROM STUD_101;
-- MINUS: 차집합
SELECT studno , name
FROM STUD_HEAVY
MINUS
SELECT studno , name
FROM STUD_101;
정렬
- ASC: 오름차순(기본), DESC: 내림차순
- NULL일 경우 오름차순에서는 맨 마지막에 출력, 내림차순에서는 맨 처음 출력
- 다중 컬럼으로 정렬 가능
그림으로 쉽게 이해하자!
Ref. 오라클 중심의 sql 배움터
'Database' 카테고리의 다른 글
[PL/SQL] 기본 문법 - %TYPE, %ROWTYPE Attribute, Exception 처리 (0) | 2019.09.16 |
---|---|
[PL/SQL] Function, Procedure (0) | 2019.09.11 |
[Oracle] ERROR: ORA-00937 (0) | 2019.09.10 |
[Oracle] 서브쿼리(Sub Query) (0) | 2019.09.09 |
[Oracle] DML(Data Manipulation Language) - INSERT, UPDATE, DELETE, MERGE (0) | 2019.09.09 |