본문 바로가기
휴지통/휴지통1

SQL 3일차 - 데이터 추출하기 (논리연산자...)

by Shuming 2015. 12. 22.
반응형

본격적으로 SQL 을 시작해보자.


원하는 데이터만 가져오기 위한!!





WHERE 조건과 비교 연산자.



* 형식 *


SELECT *

FROM table_name


WHERE 조건절 ;


WHERE 의 구성 WHERE SAL(컬럼) =(연산자) 3000;(대상값)








SELECT *

FROM emp

WHERE deptno=10;


10번 부서의 사원 출력.

ㅁㅁ.PNG








SELECT *

FROM emp

WHERE sal<=1500;


급여가 1500 이하인 사원 출력

111.PNG








SELECT empno 사원번호,ename 사원명, sal 급여

FROM emp

WHERE ename='FORD';

  • 비교대상의 대소문자 구분과 작은따옴표를 기억하자.


캡처.PNG










논리연산자



AND 연산자

두 가지 조건을 모두 만족시 출력


SELECT *

FROM emp

WHERE deptno=10 AND job =’MANAGER’;


1.PNG






OR 연산자

두 가지 조건 중 하나만 만족하더라도 출력


SELECT *

FROM emp

WHERE deptno=10 or  job =’MANAGER’;


2.PNG







NOT 연산자

조건에 만족하지 않는 값들만 출력.


SELECT *

FROM emp

WHERE NOT deptno=10;


3.PNG








논리연산자 예제


SELECT *

FROM emp

WHERE comm=300 OR comm=500 OR comm=1400;


커미션이 300 또는 500 또는 1400인 사원 조회.


커밋.PNG














BETWEEN AND 연산자 **(오라클에서만 쓰일 수 있다.)


SELECT *

FROM emp

WHERE SAL >= 2000 AND SAL<=3000;


이렇게 썻던 걸.


SELECT *

FROM emp

WHERE SAL BETWEEN 2000 AND 3000;


이렇게 사용한다는 것.

(다만 SAL 이기 때문에 NUMBER TYPE을 쓰겠구만)

ㅁㅁ.PNG




그러면 이런식으로 응용도 가능하지.


SELECT *

FROM emp

WHERE SAL NOT BETWEEN 2000 AND 3000;

2000미만 3000초과.

ㅏㅣ;ㅏ.PNG





SELECT *

FROM emp

WHERE HIREDATE BETWEEN '1980/01/01' AND '1980/12/31';

80년도 입사한 사원만 출력.

ㅁㄴㅇㄴㅁ.PNG









IN연산자.


SELECT *

FROM emp

WHERE comm=300 OR comm=500 OR comm=1400;


이거를



SELECT *

FROM emp

WHERE COMM IN(300,500,1400);



으로 사용할 수 있음


ㅊㅊ.PNG





예제

사원번호가 7521도, 7654도, 7844도 아닌 사원을 검색하시오.


SELECT *

FROM emp

WHERE EMPNO NOT IN (7521,7654,7844);

캡처.PNG



예제2


SELECT *

FROM emp

WHERE COMM NOT IN (300,500,1400);

커미션이 300,500,1400 을 제외한 사원

111111.PNG





어! 그런데 모든 사원이 나오지 않는다 왤까?

이유는 COMM 란이 NULL 이기 때문이다.

그럼 커미션이 300,500,1400 을 제외한 모두를 표시하려면!?



SELECT *

FROM emp

WHERE NVL(COMM,0) NOT IN (300,500,1400);

22.PNG


COMM이 NULL 이지만

NAL 으로 COMM을 0으로 변환 시켯기 때문에 NULL이 아니게 되고 정상 출력이 된다.



반응형

'휴지통 > 휴지통1' 카테고리의 다른 글

JAVA - 채팅프로그래밍.  (0) 2015.12.23
SQL 4일차 - 주요 함수  (0) 2015.12.23
SQL 2일차 - 명령어  (0) 2015.12.22
SQL 2일차 - SELECT  (0) 2015.12.22
SQL 1일차 - 데이터형.  (0) 2015.12.22

댓글