개발/DB

[MySQL] 내가 보기 위해 만든 SQL CRUD 구문 정리

prpn97 2023. 5. 29. 20:37

0. 들어가기 전에

먼저 database, table이 만들어져 있어야 한다. CREATE 뒤에 만들고싶은 것을 입력하면

되고, TABLE의 경우 괄호 안에 조건들을 자세히 입력할 수 있다. 

만든 후 원하는 database, table을 하려면 각각 SHOW에 붙여서 입력해준다. 

 

CREATE한 후, SHOW TABLES;를 입력하면 다음과 같이 박스가 등장한다.

topic이라는 table을 만들고, DESC <table 이름>을 입력하면 다음과 같이 반환하는데,

만든 table의 구조를 확인할 수 있다. 

1. INSERT

- 관계형 데이터베이스의 테이블에 새로운 데이터를 삽입(저장)할 때 사용한다.

- CRUD의 Create에 해당하는 역할을 수행한다. 

*INSERT INTO 테이블명(컬럼1, 컬럼2, ...) VALUES(데이터1, 데이터2, ...)
INSERT INTO topic(title,description,created,author,profile) 
VALUES('MySQL','MySQL is ...',NOW(),'sh5080','developer');

// field 값을 입력하지 않으면 테이블의 field의 순서대로 적용할 수 있다. 
*INSERT INTO 테이블명 VALUES(데이터1, 데이터2, ...)
INSERT INTO topic VALUES('MySQL','MySQL is ...',NOW(),'sh5080','developer');

 

2. SELECT

- 관계형 데이터베이스의 테이블에 데이터를 선택할 때 사용한다. 

- CRUD의 Read에 해당하는 역할을 수행한다. 

 

SELECT * FROM <table이름>을 입력하면 다음과 같이 원하는 table의 결과를 반환한다. 

*에 원하는 field값을 넣으면 원하는 값만 추려서 확인할 수 있다. 

field를 따옴표로 묶어서 입력하면 어떤 table을 선택할지 FROM부터 생략할 수 있다.

그 외에도 where을 사용하는 등 행을 지정하거나 순서를 바꾸는 등 여러 기능이 있는데,

아직은 처음 쓰는 과정이니까 정렬하는 여러 방법들은 프로젝트를 진행하며 익혀보려 한다. 

3. UPDATE

- 관계형 데이터베이스의 테이블에서 이미 저장된 값을 수정한다.

- CRUD의 UPDATE 부분에 해당하는 역할을 수행한다.

테이블에서 id가 1인 데이터의 field값을 practice MySQL로 바꾼다.

*UPDATE 테이블명 
*SET 필드명='바꿀 필드값' 
*WHERE 조건절 ***WHERE를 적지 않으면 모든 데이터에 UPDATE가 적용된다.

UPDATE topic
SET title='practice MySQL'
WHERE id=1;

UPDATE한 후 SELECT를 통해 확인해보았다.

4. DELETE

- 관계형 데이터베이스의 테이블에서 이미 저장된 값을 삭제한다.

- CRUD의 DELETE 부분에 해당하는 역할을 수행한다.

*DELETE FROM 테이블명 WHERE 조건절
*테이블의 내용 중 이름이 practice MySQL에 해당하는 데이터를 모두 삭제한다.
***update와 마찬가지로 delete절에 where절을 적지 않으면 모든 데이터에 적용되어 데이터가 모두 삭제된다.
DELETE FROM topic
WHERE name='practice MySQL';

 

728x90