오라클에서 제공하는 학습용 테이블(EMP)을 이용하여 SQL의 기초 정리하기

 

 

1. EMP(사원정보) 테이블

DESC EMP;
- DESC[RIBE] : 테이블의 컬럼 이름, 데이터 유형, 길이, NULL 허용 여부 등 테이블의 정보를 알려주는 명령어

 

- EMPNO : 사원번호

- ENAME : 사원이름

- JOB : 직급

- MGR : 상사의 사원번호

- HIREDATE : 입사일

- SAL : 급여

- COMM : 커미션

- DEPTNO : 부서번호

 

 

 

2. SELECT 열이름 FROM 테이블명

SELECT : 데이터베이스에 저장되어있는 테이블의 내용을 조회하는 명령어

 

SELECT 뒤에는 조회를 원하는 대상의 열 이름(column name)을

FROM 뒤에는 조회를 원하는 열이 속한 테이블의 이름을 적어준다.

 

 

예시1) EMP 테이블에 속하는 모든 열 출력

SELECT * FROM EMP;

 

예시2) EMP 테이블의 사원번호, 사원명, 급여 출력

SELECT EMPNO, ENAME, SAL FROM EMP;

 

 

 

3. SELECT 열이름 FROM 테이블명 WHERE 조건

WHERE : 특정 레코드를 조회하기 위해 조건을 설정하는 명령어

 

SELECT 뒤에는 조회를 원하는 대상의 열 이름(column name)을

FROM 뒤에는 조회를 원하는 열이 속한 테이블의 이름을

WHERE 뒤에는 특정 레코드를 추출하기 위한 조건을 적는다.

 

 

예시1) EMP 테이블에서 급여가 1000 이상인 사원들의 모든 정보 출력

SELECT * FROM EMP WHERE SAL >= 1000;

 

예시2) EMP 테이블에서 직급이 MANAGER인 사원들의 사원번호, 이름, 입사일을 출력 

SELECT EMPNO, ENAME, HIREDATE FROM EMP WHERE JOB = 'MANAGER';

 

 

3-1. 조건절 연산자

< 산술 연산자 >

연산자 활용 예시
+ 더하기 SELECT SAL + 500 FROM EMP;
- 빼기 SELECT SAL - 500 FROM EMP;
* 곱하기 SELECT SAL * 12 FROM EMP;
/ 나누기 SELECT SAL / 2 FROM EMP;

 

< 비교 연산자 >

연산자 활용 예시
= 같다 SELECT * FROM EMP WHERE SAL = 3000;
> ~보다 크다 SELECT * FROM EMP WHERE SAL > 3000;
>= ~보다 크거나 같다 SELECT * FROM EMP WHERE SAL >= 3000;
< ~보다 작다 SELECT * FROM EMP WHERE SAL < 3000;
<= ~보다 작거나 같다 SELECT * FROM EMP WHERE SAL  <= 3000;
<>, != 같지 않다. SELECT * FROM EMP WHERE SAL <> 3000;

 

< 논리 연산자 >

연산자 활용 예시
AND 제시된 조건을
모두 만족하는 경우
SELECT * FROM EMP WHERE SAL > 2000 AND DEPTNO = 30;
-- 급여가
2000 이상이며 부서번호가 30인 데이터 선택
OR 제시된 조건 중
하나라도 만족하는 경우
SELECT * FROM EMP WHERE SAL > 2000 OR DEPTNO = 30;
-- 급여가 2000 이상이거나 부서번호가 30인 데이터 선택
NOT 조건에 해당 되지 않는 경우 SELECT * FROM EMP WHERE NOT DEPTNO = 30;
-- 부서번호가 30이 아닌 데이터 선택

 

< BETWEEN AND / IN >

연산자 활용 예시
BETWEEN A AND B A 이상 B 이하 SELECT * FROM EMP WHERE SAL BETWEEN 2000 AND 3000;
-- 급여가 
2000 이상, 3000 이하인 데이터 선택
IN(A,B,C) A, B, C 에 포함 SELECT * FROM EMP WHERE DEPTNO IN(10, 30)
-- 급여가 부서번호가 10, 30에 포함되는 데이터 선택

 

 

 

4. SELECT 열이름 FROM 테이블명 WHERE 조건 ORDER BY 정렬기준

ORDER BY: 지정한 열을 기준으로 정렬 방식에 따라 정렬시키는 명령어

 

SELECT 뒤에는 조회를 원하는 대상의 열 이름(column name)을

FROM 뒤에는 조회를 원하는 열이 속한 테이블의 이름을

WHERE 뒤에는 특정 레코드를 추출하기 위한 조건을

ORDER BY 뒤에는 정렬 기준이 되는 열과 정렬 방식을 적는다.

 

  ACS(오름차순) /기본값 DESC(내림차순)
숫자 작은 값부터 정렬 큰 값부터 정렬
문자 사전 순서대로 정렬 사전 순서의 반대대로 정렬
날짜 이른 날짜 순으로 정렬 늦은 날짜 순으로 정렬
NULL 가장 마지막에 위치 가장 처음에 위치

 

 

 

 

 

'데이터베이스 > Oracle' 카테고리의 다른 글

[Oracle] sys 비밀번호 변경  (0) 2022.12.03
[ORACLE] ERD 출력  (0) 2021.06.24
[Oracle] 데이터 무결성 제약 조건  (0) 2021.04.12

+ Recent posts