SELECT문에서 조건 검색 WHERE절의 연산자
- 산술연산자, BETWEEN, IN(), LIKE 연산자
- 논리연산자 : AND, OR, NOT
- 비교연산자 : =, <, >, <=, >=, !=, ^=
- EMP테이블에서 이름이 KING이고 부서번호 10인 사원의 사번, 이름, 급여, 직책, 입사일, 부서번호 출력하기
SELECT EMPNO, ENAME, SAL, JOB, HIREDATE, DEPTNO
FROM EMP
WHERE ENAME='KING' AND DEPTNO=10; --'문자'
- EMP테이블에서 입사일이 81년 12월 1일보다 늦게 입사한 사원의 사번, 이름, 입사일 출력하기
SELECT EMPNO, ENAME, HIREDATE
FROM EMP
WHERE HIREDATE > '81/12/01';
- EMP테이블에서 SAL가 1000보다 작거나 3000보다 큰 사원의 사번, 이름, 급여, 부서번호 출력하기
SELECT EMPNO, ENAME, SAL, DEPTNO
FROM EMP
WHERE SAL<=1000 OR SAL>3000;
- 컬럼 BEWEEN A AND B : A와 B 사이의 값 출력
- EMP테이블에서 SAL 1500과 3000사이의 사원의 사번, 이름, 급여, 부서번호 출력하기
SELECT EMPNO, ENAME, SAL, DEPTNO
FROM EMP
WHERE SAL BETWEEN 1500 AND 3000;
- 컬럼 IN(값1, 값2, ..., 값n) : 해당하는 값의 데이터 출력
- EMP테이블에서 부서번호 10 이거나 20 이거나 30인 사원의 사번, 이름, 급여, 부서번호 출력하기
SELECT EMPNO, ENAME, SAL, DEPTNO
FROM EMP
WHERE DEPTNO IN(10, 20, 30);
- LIKE 연산자 : 문자형 전용, 값이 명시된 패턴과 동일한지 비교
- 와일드카드 문자 %(해당 위치의 0개 이상 문자), _(해당위치의 한글자 대치)
- ESCAPE문 : ESCAPE 다음에 나오는 글자를 와일드문자가 아닌 일반문자로 인식
- EMP테이블에서 이름이 'A'로 시작하는 사원을 검색하기
SELECT *
FROM EMP
WHERE ENAME LIKE 'A%';
- 이름에 3번째 글자가 A인 사원의 정보를 출력하기
SELECT *
FROM EMP
WHERE ENAME LIKE '__A%';
- AD_% 와일드문자가 아닌 일반문자로 검색 출력하기 (ESCAPE)
SELECT *
FROM TEST01
WHERE J_CODE LIKE 'AD\_\%%' ESCAPE '\';
- NULL인 컬럼값 조회 : IS NULL
- NULL이 아닌 컬럼값 조회 : IS NOT NULL
- EMP테이블에서 COMM이 NULL이 아닌 사원 정보 출력하기
SELECT *
FROM EMP
WHERE COMM IS NOT NULL;
- NOT 연산자 : 조건이 거짓이어야 연산이 된다.
--WHERE절에서 연산자에 대한 NOT 연산자의 사용 예
WHERE JOB NOT IN ('CLERK', 'PRESIDENT')
WHERE SAL NOT BETWEEN 800 AND 1500
WHERE ENAME NOT LIKE '%A%'
WHERE COMM IS NOT NULL
'데이터베이스 > SQL' 카테고리의 다른 글
[DB] 오라클 SQL 함수 (2) 숫자 함수_반올림, 절삭, 제곱, 절대값, 나머지반환, 숫자형식 표현 (0) | 2021.10.27 |
---|---|
[DB] 오라클 SQL 함수 (1) 문자 함수_대소문자 변환, 문자열 위치, 공백 제거, 문자열 길이 (0) | 2021.10.27 |
[DB] SQL SELECT문(3)_ORDER BY절(정렬) (0) | 2021.10.21 |
[DB] SQL SELECT문(1)_기본문법 (0) | 2021.10.21 |
[DB] SQL 명령어 종류(DQL, DML, DDL, DCL, TCL) (0) | 2021.10.20 |