본문 바로가기
Data Science/SQL

[SQL로 맛보는 데이터 전처리 분석] 기본 문법 정리 - 2

by 루크 Luke 2022. 7. 7.
반응형

* INSERT

- 데이터를 추가할 때 사용하는 문법

- 행을 추가한다고 생각하면 됨

INSERT INTO [Table Name] ([Column Name 1], [Column Name 2], ... ) VALUES (Value1, Value2, ...)

- 여러 행을 한번에 추가하고 싶다면, VALUES의 값을 ,(comma)로 구분해서 여러 줄 입력해주면 된다.

INSERT INTO [Table Name] ([Column Name 1], [Column Name 2], ... ) VALUES (Value1, Value2, ...),
    									(Value1, Value2, ...), 
                							(Value1, Value2, ...),
                							(Value1, Value2, ...);

 

* DELETE

- 데이터를 삭제할 때 사용하는 문법

- 행을 삭제한다고 생각하면 됨

DELETE FROM [Table Name]
WHERE [Column Name] = Value

- 어떤 데이터를 삭제해야할 지 WHERE 절에서 명시해주면 됨

- WHERE 조건에 해당하면 모든 데이터를 다 삭제하기 때문에, 신중하게 해야 함

- DELETE 이전에 SELECT로 삭제할 대상을 명확히 눈으로 확인한 후에 삭제하는 것을 추천함

 

* UPDATE

- 레코드에서 특정 데이터 값을 갱신할 때 사용하는 문법

UPDATE [Table Name]
SET [Column Name] = Value
WHERE [Condition]

- UPDATE도 신중하게 해야 함

 

* PROCEDURE

- 매크로처럼 반복되는 내용을 하나의 단위로 생성하는 것

DELIMITER //
CREATE PROCEDURE [Procedure Name]()
            BEGIN
                [Query];
            END
// DELIMITER;

- 예시 : 매일 직전 일자 판매일의 원가가 갱신되어야 하는 경우 프로시저 작성

DELIMITER //
CREATE PROCEDURE sales_minus()
    BEGIN
    	UPDATE product
        SET 원가 = (-1) * 원가
        WHERE 취소여부 = 'Y'
            AND 판매일자 = CURDATE() - 1;
    END
// DELIMITER;

 

* VIEW

- 테이블을 직접 생성하지 않고 SELECT 문의 출력 결과를 보여주려고 할 때 사용

- 보안 상 이슈로 타 조직 사람들이 우리 테이블을 직접 조회하면 안될 때 사용함

CREATE VIEW [DB Name].[VIEW Name] AS (
					SELECT [Columns]
                                        FROM [DB Name].[Table Name]
                                        WHERE [Conditions]
                                    );

- 가상의 테이블, 사용자의 입장에서는 테이블과 동일하게 보임

- 뷰는 실제 데이터를 가지고 있지는 않음

- 실제 테이블에 링크된 개념

- 액세스 제한을 위해 주로 사용됨

- 테이블 자체적으로는 행, 열 단위로 구너한 부여할 수 없음

반응형

댓글