[오라클] SELECT 데이터 조회#2

SELECT 데이터 조회#1 itjy2.tistory.com/75
SELECT 데이터 조회#3 itjy2.tistory.com/76

 

SELECT 조건문

 

컬럼의 원하는 부분만 조회하기 (WHERE)

SELECT * 
FROM EMP 
WHERE DEPTNO='20';

EMP테이블의 사원번호가 20인 사원의 정보만 조회하고 싶을때 WHERE 조건을 써주고 [필드] = '[값]' 조건을 주면 된다.


조건 여러개 사용

SELECT * 
FROM EMP 
WHERE DEPTNO='20'
AND JOB='MANAGER';

여러 조건을 사용할때는 AND를 사용할 수 있다. ( AND기 때문에 둘중에 하나만 조건이 맞지 않아도 결과가 나오지않음 , OR 조건도 사용가능하다.)

 

DEPTNO,JOB 컬럼에 OR 조건을 사용하고 조회한 결과 두가지 조건중 하나라도 맞으면 출력되는 것을 볼 수 있다.

 

IN

OR와 같은 방식으로 IN이란 것을 사용 할 수 있는데 사용 방법을 보겠다.

//IN을 사용하여 부서번호가 10또는 20인 사원 정보 출력
SELECT ENAME,EMPNO,DEPTNO
FROM EMP
WHERE DEPTNO IN (10,20);

//OR를 사용하여 부서번호가 10또는 20인 사원 정보 출력
SELECT ENAME,DEPTNO
FROM EMP
WHERE DEPTNO=10 OR DEPTNO=20;

기능은 같지만 단위가 많아질수록 IN을 사용하는게 편할것 같음

 

 

7.산술연산하며 조회하기

EMP 테이블에서 사원이름, 급여, 급여의 1.5배 를 조회해주는 SELECT문을 작성해보자.

SELECT ENAME,SAL,(SAL*1.5) INCENTIVE
FROM EMP
WHERE DEPTNO='20';

산술 연산해서 출력하는부분도 ALIAS로 지정하여 출력할 수 있다.

 

8.비교연산자

=, !=, <, >, <=, >= 등 연산자를 사용할 수 있고 간단하게 예제로 알아보자.

//EMP테이블에서 사원이름,사원번호를 출력하고 급여가 2000 이상인 사원만 조회
SELECT ENAME,EMPNO
FROM EMP
WHERE SAL >= 2000;

//EMP테이블에서 사원이름,사번,부서번호를 출력하고 이름이 SMITH인 사람을 조회
SELECT ENAME,EMPNO,DEPTNO
FROM EMP
WHERE ENAME='SMITH';

※ 컬럼명은 대소문자 구별하지 않지만 값들은 대소문자를 구별한다.

 

9. BETWEEN

보통 사이값을 구할때 사용한다 .
작은수가 앞에 들어가야한다.

SELECT ENAME,EMPNO,SAL
FROM EMP
WHERE SAL BETWEEN 2000 AND 3000;

급여가 2000부터 3000까지의 사원의 정보만 출력한다.

 

10. LIKE

사원이름이 A로 시작하는 사원의 모든정보를 조회

SELECT *
FROM EMP
WHERE ENAME LIKE 'A%';

 

형식 설명
'A%' A로 시작하는 모든 문자열
'%A' A로 끝나는 모든 문자열
'%A%' A가 포함된 모든 문자열
'A_____' A로 시작하는 5글자 문자열
'____A%' 네번째 글자가 A인 문자열

 

11. IS NULL / IS NOT NULL

조건으로 컬럼의 NULL값인 값만 조회하거나 NULL이 아닌 값만 조회 할 수 있다.

SELECT EMPNO, ENAME,COMM
FROM EMP
WHERE COMM IS NULL;

COMM 컬럼의 값이 NULL 인것만 조회

결과

반대로 IN NULL 대신 IS NOT NULL 을 사용하면 NULL이 아닌것만 나오게 된다.

 

12.조건을 입력받아 조회하기

사용법

SELECT [컬럼명] FROM [테이블명/뷰명]
WHERE [컬럼명] = &[컬럼명];

예제

SELECT ENAME,EMPNO,JOB
FROM EMP
WHERE DEPTNO= &DEPTNO;

사원번호는 내가 입력한 번호를 조건으로 받아 조회하게 된다.

위의 쿼리를 실행하면 아래와 같은 창이뜬다

값을 입력하고 확인을 누르면 부서번호가 30인 것들의 대한 값만 나오는것을 확인할 수 있다.

 

 

 

댓글

Designed by JB FACTORY