728x90
WHERE 조건절 형태
- WHERE 절 숫자형 데이터 조건
SELECT 열 이름1, 열 이름 2
FROM 테이블명
WHERE 비교할 열 이름 = 숫자;
- WHERE 절 문자/날짜형 데이터 조건
SELECT 열 이름1, 열 이름 2
FROM 테이블명
WHERE 비교할 열 이름 = '문자';
작은따옴표 (' ')안에 기재해야 한다.
- WHERE 절 내 비교연산자 활용
A=B | A와 B가 같다. |
A<>B , A!=B , A ^=B | A와 B가 같지 않다. |
A< B | A가 B보다 작다 (미만) |
A <= B | A가 B보다 작거나 같다 (이하) |
A >= B | A가 B보다 크거나 같다 (이상) |
BETWEEN A AND B | A와 B사이의 값: 지정된 두 값 사이에 있는 경우 |
IS NULL | NULL 값을 가진 열을 검색하는 경우 |
IN NOT NULL | NULL 값이 아닌 열을 검색하는 경우 |
WHERE 절의 논리연산자 AND, OR, IN, NOT IN
-AND연산자
조건을 모두 만족해야 하는 경우 (교집합)
SELECT 열 이름1, 열 이름 2
FROM 테이블명
WHERE 조건절1 AND 조건절2;
-OR 연산자
하나의 조건이라도 만족하면 출력하게 된다.(합집합)
SELECT 열 이름1, 열 이름 2
FROM 테이블명
WHERE 조건절1 OR 조건절2;
- IN 연산자
OR 연산자를 여러번 사용할 경우 하나로 묶을 수 있다.
SELECT 열 이름1, 열 이름 2
FROM 테이블명
WHERE 비교할 열 이름 IN (조건1,조건2);
IN연산자는 OR 연산자보다 처리 속도가 빠르기에 데이터의 양이 많을 때 좀더 빠르게 실행할 수 있다.
IN 연산자 안에 다른 SELECT 문장을 사용하는 SUB-QUERY 구문에서 사용할 수 있다.
- NOT IN 연산자
특정 테이블로부터 특정한 조건들 안에 속하지 않는 모든 데이터를 추출할 경우
SELECT 열 이름1, 열 이름 2
FROM 테이블명
WHERE 비교할 열 이름 NOT IN (조건1, 조건2);
NULL 이란?
데이터가 존재하지 않는다는 것을 의미하며, SPACE(공백) 또는 숫자 0과는 다른 개념이다.
NULL을 사용할 때는 연산자 '='를 사용할 수 없으며, NULL값인 행을 찾을 때는 IS NULL,
NULL 값이 아닌 행을 찾을 때는 IS NOT NULL을 사용한다.
NULL 값은 오름차순 혹은 내림차순으로 정렬 시 가장 큰 값으로 분류된다.
NULL 값의 처리 함수
- NVL(열 이름, 0)
: 해당 열의 값이 NULL이면 2의 값 리턴 (0으로 처리)
- NVL2(열 이름, expr1, expr2) :
해당 열의 값이 NULL이 아닐 경우에는 expr1, NULL일 경우에는 expr2의 값
728x90
'CS-SQL-DB' 카테고리의 다른 글
[SQL] 데이터모델링에서 데이터독립성과 특징 (0) | 2021.10.25 |
---|---|
데이터 모델 이해하기 : 모델링의 이해와 특징 (0) | 2021.10.22 |
[SQL/DB 테이블명오류]ORA-00903: invalid table name Oracle 원인 (0) | 2021.10.14 |
SQL 기본구문과 데이터 정렬(ORDER BY) 그리고 중복(DISTINCT) (0) | 2021.09.02 |
데이터 형식 및 DBMS , SQL 기본 개념 (0) | 2021.09.01 |
댓글