억대 연봉을 위한 인간수업
Published 2019. 10. 29. 16:32
SQL - DML 쿼리문 사용법 CS/DB
반응형

SQL 이란?

 - Structured Query Language의 약어이다.

 - 데이터 베이스의 데이터를 관리하기 위해 만들어진 프로그래밍 언어이다.

 - 데이터 베이스에선 쿼리를 이용하여 데이터를 삽입,삭제, 갱신한다. 

 - SQL에서 데이터 베이스에게 뭔가 요청하는 것을 Query, 문의라 하는데 요청하는 모든 명령어를 쿼리 라 한다.

 - 쿼리의 종류로는 DML,DCL,DDL이 존재한다.

 

 

 

 

쿼리의 종류

1. DDL

 - Data define languege의 약어로 직역하면 데이터를 정의하는 언어다.

 - 주로 생성, 변경, 삭제 등 데이터 구조와 관련된 명령어이다.  

 - CREATE, ALTER,DROP 등이 이에 속한다.

 

2. DML

 - data manipulation languege의 약어로 데이터 조회, 변경을 하는 명령어들을 말한다.

 - SELECT, INSERT,UPDATE,DELETE가 이에 속한다.

 

3. DCL

 - data control languege로 데이터베이스에 접근하고 객체를 사용하게 권한을 주는 명령어들을 말한다. 

 - GRANT, REVOKE가 이에 속한다. 

 

 

 

 

 

 

 

쉽게 설명하기 위해 member 라는 테이블이 존재하며, 값은 다음과 같다고 예를 들어보자.

 

ID 이름 가입일
aa 김철수 2019-09-10
bb 비타민 2019-09-20
cc 홍길동 2019-10-01

 - DML 쿼리문을 통해 해당 member 테이블에서 SELECT, INSERT, DELETE,UPDATE문을 이용해 데이터를 검색, 삽입, 삭제, 변경 할 수 있다.

 - 사용법은 아래와 같다.

 

 

 

 

 

1. SELECT

 

형식 : SELECT 필드명 FROM 테이블명 WHERE 조건;

EX ) SELECT * FROM member WHERE id = 'aa';

 -> member라는 테이블에서 id가 aa인 모든 필드값을 검색해라.

 

 

결과

ID 이름 가입일
aa 김철수 2019-09-10

 

이런 문법을 사용하여 DB에서 원하는 정보를 검색할 수 있다.

여기서 테이블명은 해당 DB의 테이블 자체를 말하는 것이고 필드는 해당 속성이라 말할 수 있다.

쉽게 말해 '사람'이라는 테이블 안에 '키','몸무게','나이' 등등의 속성이라 생각하면 쉽다.

여기서 * 의 의미는 속성을 정하지 않고 모든 속성이라는 의미이다.

 

 

* 만약 SELECT * 이 아니라 '이름'이라는 속성이 들어갔을 경우 테이블중 id가 aa에 속하는 데이터중, 이름 속성만 출력한다.

이름
김철수

 

 

 

 

 

 

 

2. INSERT

 

형식 : INSERT INTO member(id, 이름) VALUES('test','강아지');

EX) INSERT INTO 테이블명(필드명1,2) VALUES(값1,값2);

해당 테이블에서 원하는 속성의 값들 중, 필드에 맞게 값1,2를 삽입하는 쿼리문이다.

 

결과

ID 이름 가입일
aa 김철수 2019-09-10
bb 비타민 2019-09-20
cc 홍길동 2019-10-01
test 강아지  

 

 

 

 

 

3. UPDATE

 

형식 : update 테이블 명 SET 필드명 = 값 WHERE 조건;

EX)update member set id = 'GG' where 이름='비타민';

 

결과

ID 이름 가입일
aa 김철수 2019-09-10
GG 비타민 2019-09-20
cc 홍길동 2019-10-01
test 강아지  

 

 

이는 해당 테이블의 필드중 '값'을 조건에 맞는걸 찾아 수정해주는 쿼리문이다.

만약 WHERE문, 조건을 쓰지 않으면 해당 테이블의 모든 필드 값이 변경되므로 주의해야 한다.

 

 

 

 

 

 

 

4. DELETE

 

형식 : DELETE FROM 테이블명 WHERE 조건;

EX)DELETE FROM member where id = 'test';

 

결과

ID 이름 가입일
aa 김철수 2019-09-10
GG 비타민 2019-09-20
cc 홍길동 2019-10-01

 

 

 

UPDATE와 같이 조건을 쓰지 않으면 해당 테이블에 존재하는 데이터가 전부 삭제된다. 

조건에 맟는 데이터를 해당 테이블에서 삭제하는 쿼리문이다.

 

반응형

'CS > DB' 카테고리의 다른 글

하둡 이란?  (0) 2019.09.16
DB[데이터 베이스] 란?  (0) 2019.09.16
Mesos 란 무엇인가  (0) 2019.09.02
KAFKA 란?  (0) 2019.09.02
profile

억대 연봉을 위한 인간수업

@회뜨는참치

이 글이 당신에게 조금이라도 도움이 된다면 좋겠습니다.