본문 바로가기

코딩공부/DATABASE2 - MySQL

[4] MySQL의 CRUD - INSERT, SELECT, UPDATE, DELETE

DB의 본질, CRUD, 그중에서도 CREATE, READ 

(Update 와 Delete 작업은 history를 위해 없을 수도 있다.)

INSERT

테이블에 레코드(row) 추가

SHOW TABLES;
DESC topic;  // describe 테이블의 구조를 확인

INSERT INTO topic(title, description, created, author, profile) VALUES('mySQL','MySQL is…',NOW(),'egoing', 'developer');
// NOW() : 현재 시간을 반환하는 함수
SELECT * FROM topic;

 

SHOW TABLES;
DESC topic;  -> describe 테이블의 구조를 확인

 

INSERT INTO topic(title, description, created, author, profile) VALUES(‘mySQL’, “MySQL is…’,NOW(),’going’, ‘developer’); 
// NOW() : 현재 시간을 반환하는 함수

id 값을 특별히 수동으로 지정하지 않으면 'auto_increment' 로 설정돼있어서 자동으로 값이 증가하면서 저장된다.

각 column1 과 value1 이 순서대로 매칭 돼서 각 칼럼에 데이터가 들어간다. 순서 중요!

 


SELECT

테이블의 데이터를 조회

 

대괄호([])는 생략가능한 옵션

select_expr : select expression 표현되어야 할 칼럼을 지정. 즉, Projection

SELECT * FROM topic;
SELECT id, title, created, author FROM topic;
SELECT “going”, 1+1 // from 생략가능
SELECT id, title, created, author FROM title WHERE author=“going”; //조건
SELECT id, title, created, author FROM title WHERE author=“going” ORDER BY id DESC; //내림차순
SELECT id, title, created, author FROM title WHERE author=“going” ORDER BY id DESC LIMIT 2;
 // LIMIT 2 ; 2개만 출력하겠다

WHERE 컬럼=data  -> 해당 조건에 맞는 데이터(행, record) 출력

ORDER BY 컬럼 [ASC | DESC]  -> [오름 | 내림] 차순으로 정렬하여 출력 (desc : descending)

LIMIT n -> n개의 데이터만 제한해서 출력

 

▶ SELECTION 

테이블에서 데이터를 검색할 때 반환될 행을 선택할 수 있으며, SELECT 시 다양한 조건을 사용하여 검색하고자 하는 행을 선택적으로 제한할 수 있습니다.

SELECTION 개념

 PROJECTION 

테이블에서 데이터를 검색할 때 반환될 열을 선택할 수 있습니다. 

PROJECTION 개념

 

 

 


UPDATE

테이블에 데이터를 수정

UPDATE topic                                                                                               
SET author='egoing'                                                                                        
WHERE id=1;

 

 


DELETE

데이터 삭제

 

SELECT FROM topic WHERE id=5;

 

 

 

 

 

 

 

 

 

 

 

'코딩공부 > DATABASE2 - MySQL' 카테고리의 다른 글

[6] 테이블 분리, JOIN  (0) 2019.09.18
[5] 관계형 데이터베이스의 필요성  (0) 2019.09.18
[3] MySQL 테이블의 생성  (0) 2019.09.18
[2] MySQL의 구조  (0) 2019.09.18
[1] MySQL 설치 - Bitnami, codeanywhere  (0) 2019.09.17