책 리뷰/초보자를 위한 SQL 200제
[Day3/30] 초보자를 위한 SQL 200제
조조링
2024. 10. 25. 22:32
728x90
반응형
이 카테고리는 정보문화사의 "초보자를 위한 SQL 200제" 30일 코스를 학습 하면서 실습한 내용입니다.
1. 비교 연산자 배우기 3 - LIKE
이름의 첫 글자가 S로 시작하는 사원들의 이름과 월급 출력
SELECT ename, sal
FROM emp
WHERE ename LIKE 'S%';
- %는 와일드 카드 - 와일드 카드는 이 자리에 어떠한 철자가 와도 상관없고 철자의 개수가 몇 개가 되든 관계없다는 뜻이다.
- 즉, WHERE ename LIKE ‘S%’는 첫 번째 철자가 S이고, 두 번째 철자가 %인 데이터를 검색하겠다는 뜻
- %가 특수문자 퍼센트가 아니라 와일드 카드로 사용되려면 이퀄 연산자(=)가 아닌 LIKE 연산자를 사용해야 함
이름의 두 번째 철자가 M인 사원의 이름을 출력
SELECT ename
FROM emp
WHERE ename LIKE '_M%';
- 언더바(_)는 어떠한 철자가 와도 관계없으나 자리수는 한 자리여야 된다는 의미
이름의 끝 글자가 T로 끝나는 사원들의 이름을 출력
SELECT ename
FROM emp
WHERE ename LIKE '%T';
이름에 A를 포함하고 있는 사원들의 이름을 출력
SELECT ename
FROM emp
WHERE ename LIKE '%A%';
2. 비교 연산자 배우기 4 - IS NULL
커미션이 NULL인 사원들의 이름과 커미션을 출력
SELECT ename, comm
FROM emp
WHERE comm is null
- NULL 값은 데이터가 할당되지 않은 상태를 의미하며, 이퀄 연산자로 비교할 수 없다.
- 따라서, NULL 값을 검색하기 위해서는 is null 연산자 사용해야 한다.
3. 비교 연산자 배우기 5 - IN
직업이 SALESMAN, ANALYST, MANAGER인 사원들의 이름, 월급, 직업을 출력
SELECT ename, sal, job
FROM emp
WHERE job in ('SALAEMAN','ANALYST','MANAGER');
- IN 연산자는 여러 리스트의 값을 한번에 조회할 수 있다.
직업이 SALESMAN, ANALYST, MANAGER이 아닌 사원들의 이름, 월급, 직업을 출력
SELECT ename, sal, job
FROM emp
WHERE job NOT in ('SALESMAN','ANALYST','MANAGER');
4. 논리 연산자 배우기 (AND, OR, NOT)
직업이 SALESMAN이고 월급이 1200 이상인 사원들의 이름, 월급, 직업을 출력
SELECT ename, sal, job
FROM emp
WHERE (job ='SALESMAN') AND (sal >= 1200);
728x90
반응형