* 연산자의 종류
1. 산술 연산자 : * / + -
2. 비교 연산자 : >, <, <=, >=, =, !=, <>, ^= (뒤에 세가지는 같지 않거나)
기타 비교 연산자 : 1. between .. and
2. like
3. in
4. is null
3. 논리 연산자 : and, or, not
* 산술 연산자
문제) 사원이름, 월급, 월급 +300*2를 출력하시오
select ename, sal, sal+300*2
from emp;
* 비교 연산자
문제) 사원번호가 7788번인 사원의 사원번호와 이름을 출력하시오
select ename, empno
from emp
where empno = 7788;
문제) 직업이 SALESMAN인 사원들의 이름과 직업을 출력하시오
select ename, job
from emp
where job = 'SALESMAN';
where절에 SALESMAN이라는 조건을 주려면 데이터는 대소문자를 구분하므로 테이블안의 데이터가 대문자로 되어있으면 검색할때도 대문자로 검색해주어야한다. 숫자와는 다르게 문자와 날짜는은 싱글쿼테이션 (' ')마크로 둘러줘야한다.
* 기타 비교 연산자
⑴ bewteen ... and
select ename, sal
from emp
where sal between 1000 and 3000;
-> sal이 1000이상 3000이하인 사원들의 이름과 월급이 나온다.
⑵ like
select ename
from emp
where ename like 'S%';
-> '%'는 와일드 카드로 이 자리에 뭐가와도 관계없고 갯수가 몇개가 되던 상관 없다는 뜻이다.
->like가 영어로 쓰일때 ~처럼, ~일것 같은의 뜻인 것 처럼 SQL에서도 '이름의 첫글자가 S로 시작할것 같은'으로 쓰인다.
문제) 이름의 두번째 철자가 M인 사원들의 이름을 출력하시오
select ename
from emp
where ename like '_M%';
-> '_'(언더바)는 이자리에 뭐가 와도 관계없으나 자릿수는 하나여야 한다.
문제) 이름의 두번째 철자가 %인 사원의 이름을 출력하시오
select ename
from emp
where ename like '_m%%' escape 'm';
-> escape : m바로 다음에 나오는 %는 와일드 카드가 아니라 특수문자 %다 라는걸 명시함. m자리에 영문 어떤걸 써도 무관하다.
#like 연산자와 짝꿍인 옵션들
- % : 이 자리에 뭐가 와도 관계 없고 갯수도 관계없다
- _ : 이 자리에 뭐가 와도 관계는 없는데 자릿수는 하나.
- escape : %와 _를 특수문자로 인식하게 하는 키워드
⑶ in
select ename, job
from emp
where job in ('SALESMAN', 'ANALYST');
->where절에 컬럼명 in (조건, 조건)
조건이 하나가 아닐때 사용한다.
⑷ is null
select ename, comm
from emp
where comm is null;
-> comm is null하면 comm의 값이 null인 사원들만 나온다.
* 논리 연산자
⑴ and
문제) 직업이 SALESMAN이고 월급이 1000이상인 사원들의 이름과 직업과 월급을 출력하시오
select ename, job, sal
from emp
where job = 'SALESMAN' and sal >=1000;
⑵ or
문제 ) 사원번호가 7788, 7902, 7369번인 사원들의 사원번호와 사원이름을 출력하시오
select ename, empno
from emp
where empno = 7788 or empno = 7902 or empno = 7369;
⑶ not
문제) 커미션이 null이 아닌 사원들의 이름과 커미션을 출력하시오
select ename, comm
from emp
where comm is not null
*order by 절 - 데이터를 정렬하는 절로 가장 마지막에 사용한다.
select ename, sal
from emp
order by sal desc;
order by 정렬할 컬럼명
※ 정렬 옵션
desc : 높은것부터 출력
asc : 낮은거부터 출력 -> 안쓰면 디폴트값
오라클 명령어 실행 순서
1. from
2. where
3. select
4. order by
오라클 명령어 코딩순서
1. select
2. from
3. where
4. order by