[SQL / 기본문법] BETWEEN AND / LIKE (%, _) / IN / 연산자 우선순위
리트리버J
·2020. 12. 28. 12:00
728x90
1. 컬럼 BETWEEN a AND b
컬럼 >= a AND 컬럼 <= b 와 같다.
1
2
3
4
5
6
7
|
SELECT
EMP_NAME,
SALARY
FROM
EMPLOYEE
WHERE
SALARY BETWEEN 2500000 AND 6000000;
|
cs |
1-1. (NOT) 컬럼 NOT BETWEEN a AND b
컬럼 < a AND 컬럼 > b 와 같다.
※ 미만과 초과가 되므로 해당 값을 제외하게 된다.
1
2
3
4
5
6
7
8
|
SELECT
EMP_NAME,
SALARY
FROM
EMPLOYEE
WHERE
SALARY NOT BETWEEN 2500000 AND 6000000;
-- NOT SALARY BETWEEN 2500000 AND 6000000;
|
cs |
2. LIKE '%A%'
'글자%' --> %를 뒤에 붙이면 글자로 시작하는 값
'%글자' --> %를 앞에 붙이면 글자로 끝나는 값
'%글자%' --> %를 앞 뒤로 붙이면 글자가 포함된 값
※ NOT은 BETWEEN AND와 마찬가지로
컬럼명 앞 뒤에 올 수 있다.
1
2
3
4
5
6
|
SELECT
EMP_NAME
FROM
EMPLOYEE
WHERE
EMP_NAME LIKE '이%';
|
cs |
2-1. 와일드카드
_ (글자 한자리), %(0개 이상의 글자)
1
2
3
4
5
6
7
|
SELECT
EMP_NAME,
PHONE
FROM
EMPLOYEE
WHERE
PHONE LIKE '___9%';
|
cs |
3. IN
비교하려는 값이 목록에 일치하는 값이 있는지 확인
( '값', '값' ) 을 이용하면
컬럼 = 값 OR 컬럼 = 값 과 같은 결과를 가져온다.
1
2
3
4
5
6
7
8
|
SELECT
EMP_NAME,
DEPT_CODE,
SALARY
FROM
EMPLOYEE
WHERE
DEPT_CODE IN ('D6', 'D8');
|
cs |
4. 연산자 우선순위
/*
1. 산술 연산자
2. 연결 연산자
3. 비교 연산자
4. IS NULL/ IS NOT NULL/ LIKE / NOT LIKE / IN / NOT IN
5. BETWEEN AND / NOT BETWEEN AND
6. NOT(논리연산자)
7. AND
8. OR
*/
728x90
'SQL > Oracle' 카테고리의 다른 글
[SQL / 기본문법] LENGTH / LENGTHB / INSTR / SUBSTR / PAD / TRIM 문자열 관련 함수 (0) | 2020.12.29 |
---|---|
[SQL / 기본문법] SUM / AVG / MIN / MAX / COUNT 숫자 관련 함수 (0) | 2020.12.29 |
[SQL / 기본문법] NVL / IS NULL / DISTINCT / AS / || / !=, ^=, <> (0) | 2020.12.28 |
[SQL]ROWNUM >= 2가 안된다면 (0) | 2020.11.15 |
[SQL] myBatis 동적 SQL 문자열 비교 (0) | 2020.11.11 |