데이터베이스
DB sql 기본문법2
테라시아
2024. 11. 19. 16:25
(3) update
- 테이블의 데이터를 변경하는 구문
1) 기본 사용법
update 테이블명
set 변경할컬럼1 = 변경할값1
, 변경할컬럼2 = 변경할값2
where 조건식
- 테이블에 200개의 컬럼이 있다고 가정
나는 그 중 한 개의 컬럼만 데이터를 바꿀 예정
=> 해당 데이터만 바꾸는 방식(X)
해당 row 전체를 지운다 + 새로운 200개 컬럼을 넣는다.
update = delete + insert
DB에 부담이 가장 많이 되는 명령문
(4) delete
- 데이터를 삭제하는 문장
1) 기본 사용법
delete from 테이블명
where 조건절
;
- 데이터가 삭제되면 복구가 불가능하기 때문에
백업을 받고나서 삭제 처리
=> 이상이 없을 경우 백업 삭제
☆ Code
drop table movie;
select * from movie;
-- desc : 테이블의 정보를 보여주는 명령어
desc movie;
-- insert
insert into movie values('파묘','20240222',12,'Horror');
insert into movie values('오리엔트특급살인','20171129',12,'Drama');
insert into movie(movie_name, genre) values('반칙의제왕','Comedy');
-- select
select *
from movie
where 1 = 1
;
select movie_name -- 영화제목
, open_date -- 개봉일자
, genre -- 장르
from movie
;
select *
from movie
limit 1 -- oracle인 경우 where rownum = 1
;
-- where 절 연습
select *
from movie
where open_date >= '20240101'
-- and open_date != '99991231'
-- or genre = 'Drama'
;
-- update
update movie
set open_date = '20240914'
where movie_name = '반칙의제왕'
;
update movie
set rating = 10
where rating = 12
;
select * from movie;
-- delete
insert into movie(movie_name, open_date)
values ('베테랑2', '20240913');
delete from movie
-- where genre = '' -- null을 선택하지 못함
-- where genre = '[NULL]' -- null을 선택하지 못함
-- where genre = null -- 이것도 실패
where genre is null -- 비어있는 값을 찾을 때는 is null
;
select * from movie
where rating is not null
;