지금 국비로 스프링기반으로 배우는 웹개발자 과정을 배우고 있다.

초반 수업 했던 공부는 낯썰어 많이 공부를 못했다가, 지금은 되게 후회중이다...

공부좀 더 할걸 그랬다면서... 그래서 제대로되게 공부를 하고자 이렇게 tistory를 시작했다.

기록을 하기 위해서다. 언제든지 다시 볼 수 있게끔.. 제대로 공부할것이다. 


데이터베이스란?

 - 데이터를 관리하는 시스템

 

SQL(Structured Query Language)이란?

 - 다양한 객체를 생성 및 제어하는 역할을 한다

 

SQL 명령어 유형
유형 명령문
DQL : Data Query Language (질의어) SELECT(데이터 검색 시 사용)

DML : Data Manipulation Language (데이터 조작어)

데이터 변경 시 사용

INSERT(데이터 입력)

UPDATE(데이터 수정)

DELETE(데이터 삭제)

DDL : Data Definition Language (데이터 정의어)

객체 생성 및 변경시 사용

CREATE(데이터베이스 생성)

ALTER(데이터베이스 변경)

DROP(데이터베이스 삭제)

RENAME(데이터베이스 객체이름 변경)

더보기

TRUNCATE(데이터베이스 저장 공간 삭제)

선생님께 묻기

TCL : Transaction Control Language (트랜잭션 처리어)

COMMIT(트랜잭션의 정상적인 종료 처리)

ROLLBACK(트랜잭션 취소)

SAVEPOINT(트랜잭션 내에 임시 저장점 설정)

DCL : Data Control Language (데이터 제어어)

GRANT(데이터베이스에 대한 일력의 권한 부여)

REVOKE(데이터베이스에 대한 일련의 권한 취소)

 

 

SELECT

-- 중복되는 부서 번호를 한 번씩만 출력하기

더보기

SELECT DISTINCT DEPTNO

FROM EMP;

 

특정 조건의 데이터만 조회하는 WHERE

SELECT * COLUMN1, COLUMN2...,COLUMNN

FROM TABLE_NAME

WHERE 조건절;


조건절의 구성

WHERE    SAL        >=        500;
           1.컬럼   2.연산자  3.비교대상값

-- 급여가(SAL)가 500이상인 사원 출력하기

더보기

SELECT *

FROM EMP

WHERE SAL >=500;

 

날짜데이터 조회

-- 입사일(HIREDATE)이 2019년 1월 1일 이전인 사원만 출력하기

더보기

SELECT *

FROM EMP

WHERE HIRDATE < TO_DATE('2019/01/01', 'YYYY/MM/DD');

 

논리연산자
연산자 의미
AND

두 가지 조건을 모두 만족해야만 검색할 수 있습니다

 

-- 부서번호가 10이고, 직급이 '과장'인 사원만 출력하기

SELECT * FROM EMP WHERE DEPTNO=10 AND JOB='과장';

OR

두 가지 조건 중에서 한 가지만 만족하더라도 검색할 수 있습니다.

 

-- 부서번호가 10이거나, 직급이 '과장'인 사원만 출력하기

SELECT * FROM EMP WHERE DEPTNO=10 OR JOB='과장';

NOT

<>

조건에 만족하지 못하는 것만 검색합니다.

 

-- NOT 연산자를 이용하여, 10번 부서에 소속된 사원만 제외하고 출력하기

SELECR * FROM EMP WHERE NOT DEPTNO=10;

 

-- <>연산자를 이용하여, 10번 부서에 소속된 사원만 제외하고 출력하기

SELECT * FROM EMP WHERE DEPTNO <> 10;

 

-- 급여가 400에서 500사이인 사원 출력하기

더보기

SELECT *

FROM EMP

WHERE SAL >= 400 AND SAL <=500;

-- 급여가 400미만이거나 500초과인 사원 출력하기

더보기

SELECT *

FROM EMP

WHERE SAL < 400 OR SAL >500;

-- 커미션이 80이거나, 100이거나, 200인 사원 출력하기

더보기

SELECT *

FROM EMP

WHERE COMM = 80 OR COMM = 100 OR COMM = 200;

-- NOT BETWEEN AND 연산자를 이용하여, 급여가 400미만이거나 500초과인 사원 출력하기

더보기

SELECT * 

FROM EMP

WHERE SAL NOT BETWEEN 400 AND 500;

 

IN연산자(~중 어느 하나만 만족하더라도 출력하도록 하는)

형식 : COLUMN_NAME IN(A, B, C)

 

-- IN연산자를 사용하여, 커미션이 80이거나, 100이거나, 200인 사원 출력하기

더보기

SELECT * 

FROM EMP

WHERE COMM IN(80, 100, 200);

+ Recent posts