DML: MySQL 테이블의 데이터를 조작하기

Bella Lee·2024년 3월 5일
0

MySQL

목록 보기
6/6
post-thumbnail

DML (Data Manipulation Language)

데이터베이스에서 데이터를 조작하고 쿼리하는 데 사용된다. 주로 데이터 삽입(Insert) 및 수정(Update), 삭제(Delete), 쿼리(Select) 와 같은 작업에 사용된다.

CRUD

Create 생성 = 데이터를 넣는다
Retrieve or Read 읽기 = 데이터를 조회한다
Update 업데이트 = 데이터를 수정한다
Delete 제거 = 데이터를 삭제한다

데이터 넣기

DDL의 예제와 이어지는데 id 같은 경우에는 auto_increment가 자동으로 데이터를 삽입해주기 때문에 따로 넣어주지 않아도 괜찮다.

INSERT INTO [테이블 이름] (필드1이름, 필드2이름, ...)
VALUES (1,2, ...);

-- 예제
INSERT INTO fruit (name, price, stocked_date)
VALUES ('사과', 1000, '2023-01-01');

데이터 조회하기

테이블 데이터 전체 조회하기

SELECT 명령어 뒤에 *를 삽입하면 전체 조회를 할 수 있다.

SELECT * FROM [테이블 이름];

-- 예제
SELECT * FROM fruit;

테이블 내 특정 필드를 지정하여 조회하기

* 대신에 필드 이름을 삽입하면 특정 필드의 데이터들을 조회할 수 있다. 또한, 여러 개의 필드 이름을 삽입할 수도 있다.

// fruit 테이블의 name 필드 데이터만 불러와라
SELECT name, FROM fruit;

// fruit 테이블의 name, price 데이터만 불러와라
SELECT name, price FROM fruit;

필터를 거쳐 조회하기

WHERE AND OR 등을 사용하여 데이터를 조회할 수 있다. 특히 ANDOR는 한 구문에 여러개 쓰일 수 있으며, 등호(=,<,>,>=,<=,!=,=) 외에도 between, in, not in 등도 있다.

SELECT * FROM [테이블 이름] WHERE [조건];

//WHERE
// fruit 테이블에서 name이 '사과'인 것만 가져와라
SELECT * FROM fruit WHERE name = '사과';

// AND
// name이 '사과'이고, price가 2000원 이하인 것만 가져와라
SELECT * FROM fruit WHERE name = '사과' AND price <= 2000;

// OR
// name이 '바나나'이거나 아니면 price가 1000원인 것만 가져와라
SELECT * FROM fruit WHERE name = '바나나' OR price = 1000;

// BETWEEN
// 가격이 1000원 ~ 2000원 인 것만 조회
SELECT * FROM fruit WHERE price BETWEEN 1000 AND 2000;

// IN
// 이름이 사과 또는 수박인 것만 조회하라
SELECT * FROM fruit WHERE name IN ('사과', '수박');

// NOT IN
// 이름이 사과가 아닌 과일 조회
SELECT * FROM fruit WHERE name NOT IN ('사과');

데이터 업데이트하기

UPDATE [테이블 이름]
SET 필드1이름 =, 필드2이름 =, ...
WHERE [조건];

-- name이 사과인 모든 데이터의 가격을 1500원으로 바꿔라
UPDATE fruit SET price = 1500 WEHRE name = '사과';

데이터 삭제하기

DELETE FROM [테이블 이름]
WHERE [조건];

-- name이 '사과'인 모든 데이터 삭제
-- 주의: 만약 [조건]을 붙이지 않으면 모든 데이터들이 삭제되니 주의하자.
DELETE FROM fruit WHERE name = '사과';



profile
슬벨라

0개의 댓글