MySql

DML 연습 (select 제외)

공부 기록장 2025. 5. 13. 16:54

INSERT 기본문법

INSERT INTO 테이블 (열1, 열2..)
VALUES ('열1에 넣을 값','열 2에 넣을 값')

 

 

 

1. users 테이블에 username, email 컬럼에 'donghun', 'a3989957@example.com' 데이터 삽입

더보기

INSERT INTO users (username, email)

VALUES ('donghun', 'a3989957@example.com')

 

 

2. users 테이블의 username, email 컬럼에

    ('alice', 'alice@example.com'),
    ('bob', 'bob@example.com'),
    ('charlie', 'charlie@example.com') 데이터 삽입

더보기

INSERT INTO users 

VALUES ('alice', 'alice@example.com'), ('bob', 'bob@example.com'), ('charlie', 'charlie@example.com')

 

 

3. users 테이블의 username, email, created_at 컬럼에

    old_users 테이블의 데이터 삽입하기

더보기

INSERT INTO users

SELECT username, email, created_at FROM old_users

 

4. users 테이블에 중복된 데이터 삽입

더보기

INSERT IGNORE INTO users (nickname, email)

VALUES ('4mbitious', 'a3989957@naver.com')

 

 

5.users 테이블에 데이터를 삽입하는데 데이터가 이미 존재하면 업데이트 처리

더보기

INSERT INTO  users (nickname, email)

VALUES ('4mbitious', 'a3989957@naver.com')

ON DUPLICATE KEY UPDATE

  username = VALUES(nickname),

  email = VALUES(email)

 

 


UPDATE 기본문법

UPDATE users
SET email='a3989957@naver.com'

 

 

 

1. users 테이블의 email 컬럼을 'new@naver.com' 으로 변경

더보기

UPDATE users

SET email = 'new@naver.com'

 

2. users 테이블의 email 이 'new@naver.com' 인 nickname 컬럼을 'newNick' 으로 변경

더보기

UPDATE users

SET nickname = 'newNick'

WHERE email = 'new@naver.com'

 

3. users 테이블의 email 이 'new@naver.com' 인 튜플을 nickname을 'newNick2', password 를 'newPass' 로 변경

더보기

UPDATE users

SET nickname = 'newNick2', password = 'newPass'

WHERE email = 'new@naver.com'

 

4. users 테이블의 모든 튜플의 nickname 앞에 'new_' 붙이기

더보기

UPDATE users

SET nickname = CONCAT('new_', nickname)

 

5. users 테이블의 nickname이 'new_users' 인 사용자 중 최대 1명의 email 을 'new@naver.com' 으로 수정

더보기

UPDATE users

SET email = 'new@naver.com'

WHERE nickname = 'new_users'

LIMIT 1

 


DELETE 기본 문법

DELETE FROM 테이블명

 

1. users 테이블의 nicknameuser1 인 사용자 삭제

더보기

DELETE FROM users

WHERE nickname = 'user1'

 

2. users 테이블의 emailsample@naver.com 이고 passwordnewpass1234 인 사용자 삭제

더보기

DELETE FROM users

WHERE email = 'sample@naver.com' AND password = 'newpass1234'

 

3. users 테이블에서 emailnaver.com 로 끝나는 사용자 모두 삭제

더보기

DELETE FROM users

WHERE email  LIKE '%naver.com'