DB(SQL)
[SQL] 연산자 - IS NULL, LIKE '패턴'
이나피스
2022. 3. 26. 16:23
반응형
IS NULL
값이 NULL인지 비교하여 조회
비교대상컬럼 IS NULL
비교대상컬럼 IS NOT NULL
IS NULL : 컬럼값이 NULL인 경우
IS NOT NULL : 컬럼값이 NULL이 아닐 경우
--보너스를 받지 않는 사원들(BONUS 컬럼값이 NULL) 사번, 이름, 급여, 보너스
SELECT EMP_ID, EMP_NAME, SALARY, BONUS
FROM EMPLOYEE
WHERE BONUS IS NULL;
--사수(MANAGER_ID)가 없고 부서배치를 받지 않은 직원들의 모든 컬럼 조회
SELECT *
FROM EMPLOYEE
WHERE MANAGER_ID IS NULL AND DEPT_CODE IS NULL;
--보너스는 받지만 부서배치는 받지 못한 직원들의 모든 컬럼 조회
SELECT *
FROM EMPLOYEE
WHERE BONUS IS NOT NULL AND DEPT_CODE IS NULL;
LIEK '패턴'
컬럼 값이 내가 패턴에 만족할 경우 조회
EX) 전씨 성을 가진 사람, 핸드폰번호 앞자리가 010으로 시작하는 번호 등
비교대상컬럼명 LIKE '특정패턴’
'%' : 0글자 이상
대상컬럼명 LIKE '문자%' -> 컬럼값 중에 '문자'로 시작하는 것을 조회
대상컬럼명 LIKE '%문자' -> 컬럼값 중에 '문자'로 끝나는 것을 조회
대상컬럼명 LIKE '%문자%' -> 컬럼값 중에 '문자'가 포함되는 것을 조회
'_' : 1글자
대상컬럼명 LIKE '_문자' -> 해당 컬럼값 중에 '문자' 앞에 무조건 1글자가 존재하는 경우 조회
대상컬럼명 LIKE '__문자' -> 해당 컬럼값 중에 '문자' 앞에 무조건 2글자가 존재하는 경우 조회
--성이 전씨인 사원들의 이름, 급여, 입사일 조회
SELECT EMP_NAME, SALARY, HIRE_DATE
FROM EMPLOYEE
WHERE EMP_NAME LIKE '전%';
--전화번호 4번째 자리가 9로 시작하는 사원들의 사번, 사원명, 전화번호, 이메일 조회
SELECT EMP_ID, PHONE, EMAIL
FROM EMPLOYEE
WHERE PHONE LIKE '___9%';
--이름중에 '하'가 포함된 사원들의 이름, 주민번호, 부서코드 조회
SELECT EMP_NAME, EMP_ID, JOB_CODE
FROM EMPLOYEE
WHERE EMP_NAME LIKE '%하%';
--이름이 '연'으로 끝나는 사원들의 이름, 입사일 조회
SELECT EMP_NAME, HIRE_DATE
FROM EMPLOYEE
WHERE EMP_NAME LIKE '%연';
--전화번호 처음 3글자가 010이 아닌 사원들의 이름, 전화번호 조회
SELECT EMP_NAME, PHONE
FROM EMPLOYEE
WHERE PHONE NOT LIKE '010%';
--DEPARTMENT 테이블에서 해외영업과 관련된 부서들의 모든 컬럼 조회 (DEPT_TITLE) 확인
SELECT *
FROM DEPARTMENT
WHERE DEPT_TITLE LIKE '%해외영업%';
반응형