연산자의 종류
- 산술 연산자
- 연결 연산자
- 논리 연산자
- 비교 연산자
||
SELECT EMP_ID || EMP_NAME || SALARY
FROM EMPLOYEE;
SELECT EMP_NAME || '의 월급은 ' || SALARY || '원 입니다.' AS "월 급여"
FROM EMPLOYEE;
리터럴
- 값 자체
- 임의로 지정한 문자열(' ')
- 조회된 RESULT SET(결과창)의 모든 행에 반복적으로 출력
여러 개의 제한 조건 결과를 하나의 논리 결과로 만들어줌
여러 조건이 동시에 TRUE일 경우에만 TRUE값 반환
여러 조건들 중에 어느 하나의 조건만 TRUE이면 TRUE값 반환
조건에 대한 반대 값으로 반환(NULL제외)
=
: 같다>
, <
: 크다 / 작다>=
, <=
: 크거나 같다 / 작거나 같다<>
, !=
, ^=
: 같지 않다BETWEEN AND
: 특정 범위에 포함되는지 비교LIKE
/ NOT_LIKE
: 문자 패턴 비교IS NULL
/ IS NOT NULL
: NULL 여부 비교IN
/ NOT IN
: 비교 값 목록에 포함 / 미포함 되는지 여부 비교비교하려는 값이 지정한 범위에 포함되면 TREU를 리턴하는 연산자
상한값과 하한값의 경계도 포함
-- 급여를 3500000보다 많이 받고 6000000보다 적게 받는 직원 이름과 급여 조회
-- AND 사용
SELECT EMP_NAME, SALARY
FROM EMPLOYEE
WHERE SALARY >= 3500000 AND SALARY <= 6000000
--BETWEEN 사용
SELECT EMP_NAME, SALARY
FROM EMPLOYEE
WHERE SALARY BETWEEN 3500000 AND 6000000;
%
와 _
를 와일드카드로 사용-- ‘전‘씨 성을 가진 직원 이름과 급여 조회
SELECT EMP_NAME, SALARY
FROM EMPLOYEE
WHERE EMP_NAME LIKE ‘전%’;
-- 핸드폰의 앞 네 자리 중 첫 번호가 7인 직원 이름과 전화번호 조회
SELECT EMP_NAME, PHONE
FROM EMPLOYEE
WHERE PHONE LIKE ‘_ _ _7%’;
와일드 카드 문자와 패턴의 특수문자가 동일한 경우
어떤 것을 패턴으로 결정하는지 구분하지 못하기 때문에
데이터로 처리할 와일드 카드 문자 패턴 기호 앞에 임의의 특수문자를 사용하고 ESCAPE OPTION으로 등록하여 처리-- EMAIL ID 중 ‘_’의 앞이 3자리인 직원 이름, 이메일 조회 SELECT EMP_NAME, EMAIL FROM EMPLOYEE WHERE EMAIL LIKE ‘_ _ _#_%’ ESCAPE ‘#';
-- ‘이’씨 성이 아닌 직원 사번, 이름, 이메일 조회
SELECT EMP_ID, EMP_NAME, EMAIL
FROM EMPLOYEE
WHERE EMP_NAME NOT LIKE ‘이%’;
NULL 여부를 비교하는 연산자
- 관리자도 없고 부서 배치도 받지 않은 직원 조회
SELECT EMP_NAME, MANAGER_ID, DEPT_CODE
FROM EMPLOYEE
WHERE MANAGER_ID IS NULL AND DEPT_CODE IS NULL;
비교하려는 값 목록에 일치하는 값이 있으면 TRUE 를 반환하는 연산자
-- D6 부서와 D8 부서원들의 이름, 부서코드, 급여 조회
-- IN사용
SELECT EMP_NAME, DEPT_CODE, SALARY
FROM EMPLOYEE
WHERE DEPT_CODE IN (‘D6’, ‘D8’);
--`=`사용
SELECT EMP_NAME, DEPT_CODE, SALARY
FROM EMPLOYEE
WHERE DEPT_CODE = ‘D6’ OR DEPT_CODE = ‘D8’;
IS NULL
, IS NOT NULL
, LIKE
, IN
, NOT IN
BETWEEN AND
, NOT BETWEEN AND
NOT
AND
OR