새소식

Database/MySQL

[MySQL] 테이블의 데이터 수정/삭제 (UPDATE/DELETE)

  • -

수정하려면 UPDATE  - -  SET - - WHERE

UPDATE 테이블명
SET 컬럼1 = 값, 컬럼2 = 값
WHERE 조건식

 

책의 가격을 1500원으로 바꾸고 싶다. (책의 id=1임)

UPDATE stock 
SET 가격 = "1500"
WHERE id = 1;

 

 

 

값을 아예 바꾸는 것이 아닌 사칙연산도 가능하다.

UPDATE stock 
SET 가격 = 가격 + 100
WHERE id = 1;

 

 

 

 

삭제하려면 DELETE  FROM - - WHERE

조건식에 맞는 모든 행을 삭제한다.

DELETE FROM 테이블명 WHERE 조건식

 

 

마지막 id 값의 데이터만 삭제하고 싶다.

DELETE FROM stock
ORDER BY id DESC LIMIT 1;

 

 

 

 

JOIN & UPDATE

JOIN한 테이블도 수정할 수 있다.

 

UPDATE A INNER JOIN B 
  ON 조건
SET 수정할내용
WHERE 조건식

 

JOIN & DELETE

JOIN한 테이블도 데이터를 삭제할 수 있다.

A 테이블에서 조건식에 맞는 행을 삭제한다.

DELETE A 
FROM A INNER JOIN B 
  ON 조건

WHERE 조건식

 

 


email이 공백인 경우에 first_name이 "Solly"이면 "admin@test.com"을, 그렇지 않으면 "guest@test.com"을 기입하자.

 

UPDATE user_sales
SET email = IF(first_name = "Solly", "admin@test.com", "guest@test.com")
WHERE email = "";

 

 

sales 부분이 NULL인 행들을 모두 삭제하자.

 

DELETE FROM user_sales
WHERE sales IS NULL;

 

 

 

728x90

'Database > MySQL' 카테고리의 다른 글

[MySQL] 가상 테이블 view  (0) 2023.03.09
[MySQL] SELECT 결과를 합치기 (UNION)  (0) 2023.03.09
[MySQL] 테이블에 데이터 집어넣기 (INSERT)  (0) 2023.03.09
[MySQL] LEFT JOIN / RIGHT JOIN  (0) 2023.03.09
[MySQL] INNER JOIN  (0) 2023.03.06
Contents