SQL, 데이터 분석!

SQL, 데이터 분석!

바로 보고 실습하는 SQL, 입문부터 활용까지!

02 데이터 CRUD

# 데이터 CRUD ## 미션 --- PostgreSQL을 설치하고, 햄버거 관리를 위한 쿼리를 연습하시오. ![SQL-입문-CRUD-쿼리](http://drive.google.com/uc?export=view&id=1Pmb_w64ZPpxUlQAbVtpu2fNo94Vcv7e2) ## 개념 --- #### 우리는 앞서.. DB와 SQL에 대해 알아보았다. 그럼 이젠 실전이다..! ![](http://drive.google.com/uc?export=view&id=1PbQaXB4o872gxFLSyvw5g4We4g1Q6qLT) #### 테이블, 무엇? 물건을 저장하려면 적당한 박스가 필요하듯, 데이터도 그러하다. DB의 데이터의 박스, 데이터의 틀이 되는게 테이블(table)이다. ![](http://drive.google.com/uc?export=view&id=1Pq0Vw7u_d87541IS7JJybuO2jJygVCo1) 테이블이란 데이터의 저장 단위로, 행(row)과 열(column)로 구성된다. 행은 하나의 기록(record), 열은 하나의 속성(attribute)을 의미한다. 엑셀을 떠올리면 편하다. ![SQL-입문-DB-테이블-구조](http://drive.google.com/uc?export=view&id=1Pwcphk7VZwc5qOWyh6mVgwnVi7xaVWxa) #### DB는 바보다 알아서 일하지 않는다. 하지만 시키면 잘한다. 그럼 어떻게 일을 시켜야 할까? SQL을 사용하면 된다. DB는 SQL 명령에 따라 움직인다. SQL로 작성된 명령, 이를 쿼리(qurey)라 한다. 쿼리를 통해 테이블을 만들 수 있고, 데이터를 생성(Create), 조회(Read), 수정(Update), 삭제(Delete) 할 수 있다. 간단히 줄여 CRUD 할 수 있다. ![sql-입문-crud-쿼리](http://drive.google.com/uc?export=view&id=1PxC5r3-Ntn-3i6tkv_lr7eqRslCbY27K) ## 실습 --- #### 테이블 생성 ``` -- 주석: 실행되지 않는 쿼리 -- burgers 테이블 생성 쿼리(DB에게 하는 SQL 명령) CREATE TABLE burgers( -- 테이블명 id INT, -- id(숫자) name VARCHAR(50), -- 이름(최대 50글자) price INT, -- 가격(숫자) gram INT, -- 무게(숫자) kcal INT, -- 열량(숫자) protein INT -- 단백질량(숫자) ); ``` #### 레코드 생성 ``` -- 생성 쿼리#1 INSERT INTO burgers(id, name, price, gram, kcal, protein) VALUES (1, '행운버거 골드 스페셜', 6000, 227, 699, 26) -- 행운버거 어서오고 ; -- 생성 쿼리#2 INSERT INTO burgers(id, name, price, gram, kcal, protein) VALUES (2, '행운버거 골드', 5300, 222, 540, 25), (3, '트리플 치즈버거', 6300, 219, 619, 36), (4, '빅맥', 5300, 223, 583, 27) -- 나머지 버거들도 추가 ; ``` #### 레코드 조회 ``` -- 조회 쿼리 SELECT * -- 모든 컬럼 보여줘 FROM burgers; -- 버거 테이블에 ``` #### 레코드 수정 ``` -- 수정 쿼리#1 UPDATE burgers -- 모든 버거 SET price = 1000; -- 1000원 개꿀 -- 수정 쿼리#2 UPDATE burgers -- 1: 해당 테이블에서 SET price = 500 -- 3: 가격을 500원으로 수정 WHERE id = 4; -- 2: id가 4인 대상의 ``` #### 레코드 삭제 ``` -- 삭제 쿼리 DELETE FROM burgers -- 1: 버거 테이블에서 WHERE id = 4; -- 2: id가 4인 대상을 삭제 ``` ## 훈련 --- 나만의 테이블 생성 쿼리를 작성하시오. ``` -- 나만의 테이블 만들기 예 CREATE TABLE idols ( -- 아이돌 테이블 id INT, -- ID name VARCHAR(50), -- 이름 member_nums INT, -- 멤버 수 debut_year INT -- 데뷔년도 ); ```