KoreanFoodie's Study
SQL 기초 - 6. 데이터 관리(삽입, 삭제, 갱신) 본문
이 글은 '김상형의 SQL 정복'의 예제 코드를 설명하는 방식으로 SQL 쿼리 예제를 소개하고 있습니다.
SQL 기초 - 6. 데이터 관리(삽입, 삭제, 갱신)
-- INSERT INTO 구문을 이용해 행을 추가할 수 있다. 이때 데이터 형식은 맞춰주어야 한다.
INSERT INTO tCity (name, area, popu, metro, region)
VALUES ('서울', 605, 974, 'y', '경기');
-- VALUES를 바로 써줘도 된다.
INSERT INTO tCity VALUES ('서울', 605, 974, 'y', '경기');
INSERT INTO tCity VALUES ('평택', 453, 51, 'n', '경기');
INSERT INTO tCity VALUES ('평택', 51, 453, 'n', '경기'); // area와 popu가 바뀜
INSERT INTO tCity VALUES ('평택', 453, 'n', 51, '경기'); // popu와 metro 순서가 바뀜
INSERT INTO tCity VALUES ('평택', 453, 'n', '경기'); // popu 필드값 누락
INSERT INTO tCity (area, popu, metro, region, name)
VALUES (453, 51, 'n', '경기', '평택');
-- TRUNCATE를 이용하면 테이블의 모든 데이터를 지운다(물리). 이는 ROLLBACK으로도 되돌릴 수 없다.
TRUNCATE TABLE tCity;
-- MySQL에서는 아래와 같은 문법을 허용한다. 오라클은 아직...
INSERT INTO tCity (name, area, popu, metro, region) VALUES
('서울',605,974,'y','경기'),
('부산',765,342,'y','경상'),
('오산',42,21,'n','경기'),
('청주',940,83,'n','충청'),
('전주',205,65,'n','전라'),
('순천',910,27,'n','전라'),
('춘천',1116,27,'n','강원'),
('홍천',1819,7,'n','강원');
-- 기존 테이블에서 가져온 데이터를 삽입할 때는 INSERT INTO ... SELECT FROM ...을 쓴다.
INSERT INTO tStaff(name, depart, gender, joindate, grade, salary, score)
SELECT name, region, metro, '20210629', '신입', area, popu FROM tCity WHERE region = '경기';
INSERT INTO tStaff(name, depart, gender, joindate, grade, salary, score)
SELECT name, 지원부서, gender, 오늘, '수습', 230, score * 0.1 FROM tCandidate
WHERE result = '합격';
-- 기존 테이블 정보를 이용해 새 테이블을 만드는 방법이다.
CREATE TABLE tSudo AS SELECT name, area, popu FROM tCity WHERE region = '경기';
SELECT * FROM tSudo;
SELECT * INTO tCityCopy FROM tCity;
CREATE TABLE tStaff_8월20일 AS SELECT * FROM tStaff;
DELETE FROM tCity WHERE name = '부산';
DELETE FROM tCity WHERE region = '경기';
DELETE FROM tCity;
SELECT * FROM tCity WHERE popu > 50;
-- DELETE
-- SELECT *
FROM tStaff WHERE grade = '과장';
UPDATE tCity SET popu = 1000, region = '충청' WHERE name = '서울';
UPDATE tCity SET popu = 1000, region = '충청';
-- 인구를 2배 늘리는 쿼리이다.
UPDATE tCity SET popu = popu * 2 WHERE name = '오산';
CRUD (CREATE, READ, UPDATE, DELETE) 함수는 매우 중요하며, 기본 문법이 손에 익을 정도로는 숙련되어야 한다!
'Database' 카테고리의 다른 글
SQL 기초 - 8. 모델링 (정규화, 참조 무결성, 쇼핑몰 모델링) (0) | 2021.10.12 |
---|---|
SQL 기초 - 7. 제약(제약, 기본키, 시퀀스) (0) | 2021.10.12 |
SQL 기초 - 5. 데이터 집계 (집계함수, 그룹핑) (0) | 2021.10.12 |
SQL 기초 - 4. 데이터 읽기(SELECT, 조건문, 정렬) (0) | 2021.10.12 |
SQL 기초 - 2. 테이블 생성과 삽입 (2) | 2021.10.12 |
Comments