반응형
1. IF EXIST문 , IF NOT EXIST문 사용법
테이블에 컬럼의 [조건에 맞는] 데이터가 존재하는지에 따라 실행되는 조건문이다. (조건은 생략 가능)
IF EXISTS => 데이터가 존재할 때 조건문
IF NOT EXISTS => 데이터가 존재하지 않을 때 조건문
IF (NOT )EXIST ( SELECT COLUMN1,COLUM2,...FROM TABLE [WHERE 조건])
BEGIN
-- 실행할 쿼리
END
2. IF EXIST문 사용예시
CREATE TABLE PERSON(
SEQ_NO INT IDENTITY,
NAME VARCHAR(20),
AGE INT
)
INSERT INTO PERSON(NAME,AGE)VALUES('홍길동', 10)
INSERT INTO PERSON(NAME,AGE)VALUES('김천재', 15)
✏PERSON 테이블에 변수 @NAME1(홍길동)이 존재하면 나이를 UPDATE 하기
PERSON 테이블의 컬럼 NAME에 홍길동이 존재하면 UPDATE
PERSON 테이블의 컬럼 NAME에 홍길동이 존재하지 않으면 INSERT
DECLARE @NAME1 VARCHAR(20)
SET @NAME1= '홍길동'
IF EXISTS (SELECT NAME FROM PERSON WHERE NAME = @NAME1 )
BEGIN
UPDATE PERSON
SET AGE = 30
WHERE NAME = @NAME1
END
ELSE
BEGIN
INSERT INTO PERSON(NAME, AGE)VALUES(@NAME1,20)
END
3. IF NOT EXIST문 사용예시
✏PERSON 테이블에 변수 @NAME2(찐투두)가 존재하지 않으면 INSERT
DECLARE @NAME2 VARCHAR(20)
SET @NAME2= '찐투두'
IF NOT EXISTS(SELECT NAME FROM PERSON WHERE NAME = @NAME2)
BEGIN
INSERT INTO PERSON(NAME,AGE)VALUES(@NAME2, 17)
END
테이블에 데이터가 존재하는지에 따라 INSERT 혹은 UPDATE 등을 하고 싶을 때
IF EXIST 문이나 IF NOT EXIST 문을 사용하면 되겠쥬?
반응형
'MS SQL' 카테고리의 다른 글
MS SQL_SQL 계정의 암호가 만료되었습니다. (0) | 2023.03.06 |
---|---|
MS SQL 대소문자 변환 및 대소문자 구분 검색 (0) | 2023.01.27 |
MS SQL_전체 테이블 및 컬럼 조회하는 법 (0) | 2022.10.19 |
MS SQL_MERGE문 사용법 (0) | 2022.09.23 |
MS SQL_문자열 관련 함수 정리2(문자열 합치기, 문자열 자르기, 문자열 치환, 공백 제거) (0) | 2022.09.22 |