산술 연산자 ( + , - , * , / )
-부서번호가 10 번인 사원들의 급여를 출력하되 10% 인상된 금액으로 출력해 보세요.
SQL>SELECT sal, sal*1.1
FROM emp
WHERE deptno = 10 ;
비교 연산자 ( = , != , > , < , >= , <= )
-급여가 3000 이상인 사원들의 모든 정보를 출력하세요.
SQL>SELECT *
FROM emp
WHERE sal >= 3000 ;
-부서번호가 30번이 아닌 사람들의 이름과 부서번호를 출력해보세요.
SQL>SELECT ename, deptno
FROM emp
WHERE deptno != 30 ;
논리 연산자 ( AND , OR , NOT )
SQL>SELECT ename, sal
FROM emp
WHERE deptno = 10 AND sal >= 3000 ;
SQL>SELECT empno, deptno
FROM emp
WHERE job = 'SALESMAN' OR job = 'MANAGER' ;
SQL 연산자 ( IN , ANY , ALL , BETWEEN , LIKE , IS NULL , IS NOT NULL )
SQL>SELECT empno, ename, deptno
FROM emp
WHERE deptno=10 OR deptno=20 ;
IN 연산자를 사용한다면 ?
SQL>SELECT empno, ename, deptno
FROM emp
WHERE deptno IN(10,20) ;
SQL>SELECT empno, sal
FROM emp
WHERE sal > ANY(1000, 2000, 3000) ;
--> 급여가 1000이상인 row 모두 select
SQL>SELECT empno, sal
FROM emp
WHERE sal > ALL(1000, 2000, 3000) ;
--> 조건이 다 맞아야 하므로 급여가 3000이상인 row만 select
급여가 1000 과 2000 사이인 사원들의 사원번호,이름,급여를 출력하세요.
SQL>SELECT empno, ename, sal
FROM emp
WHERE sal BETWEEN 1000 AND 2000 ;
-사원이름이 'FORD' 와 'SCOTT' 사이의 사원들의 사원번호,이름을 출력해보세요
SQL>SELECT empno, ename
FROM emp
WHERE ename BETWEEN 'FORD' AND 'SCOTT' ;
null의 값 : 알 수 없음(비교불가)
-커미션이 NULL 인 사원의 사원이름과 커미션을 출력해보세요
SQL>SELECT ename, comm
FROM emp
WHERE comm IS NULL ;
-커미션이 NULL 이 아닌 사원의 사원이름과 커미션을 출력해보세요
SQL>SELECT ename, comm
FROM emp
WHERE comm IS NOT NULL ;
SQL>SELECT ename, comm
FROM emp
WHERE EXISTS (SELECT ename FROM emp WHERE ename='FORD');
-> select ename from emp where ename='FORD' 이게 true여야 실행
SQL> select ename, comm from emp
2 where 10=10;
SQL> select ename, comm from emp
2 where 10!=10;
-사원이름이 'J' 로 시작하는 사원의 사원이름과 부서번호를 출력하기
% : 어떤 문자열(문자 존재하지 않아도 됨)
date타입에서도 적용가능‘81%’ ->81년도 어쩌고
SQL>SELECT ename, deptno
FROM emp
WHERE ename LIKE 'J%' ;
-사원이름에 'J' 가 포함되는 사원의 이름과 부서번호를 출력하기
SQL>SELECT ename, deptno
FROM emp
WHERE ename LIKE '%J%' ;
-사원이름의 두번째 글자가 'A' 인 사원의 이름,급여,입사일을 출력하기
SQL>SELECT ename, sal, hiredate
FROM emp
WHERE ename LIKE '_A%' ;
-사원 이름이 'ES' 로 끝나는 사원의 이름,급여,입사일을 출력해 보세요.
SQL>SELECT ename, sal, hiredate
FROM emp
WHERE ename LIKE '%ES' ;
-입사년도가 81년 인 사원들의 입사일과 사원번호를 출력해 보세요.
SQL>SELECT hiredate, empno
FROM emp
WHERE hiredate LIKE '81%' ;
=>+와 같은 역할 , 단순히 문자열을 연결해서 하나의 데이터로 리턴한다.
오라클에서는 ||가 연결연산자(+) !!!!!!!!!
SQL>SELECT ename || '의 직업은' || job || ' 입니다.' FROM emp ;