@@ROWCOUNT 란 ?
쿼리 실행문 실행 후 영향을 받은 로우의 수를 반환
별도 초기화하지 않으면 계속 유지
select, update, delete등 쿼리에서 사용 가능
UPDATE 테이블명 SET ITEM_NAME = 아이템명 WHERE ITEM_CODE = 아이템코드
IF @ROWCOUNT = 0
BEGIN
INSERT INTO 테이블명 (아이템코드,아이템 명 ) VALUES (아이템코드, 아이템명)
END
실습
현재 상품 테이블에 특정 조건으로 데이터를 조회하면 데이터가 나오지 않는다.
SELECT * FROM TB_SMS_ITEMS WHERE ITEM_CODE = 'ITEM1';
실행 결과

UPDATE TB_SMS_ITEMS SET ITEM_NAME_KOR = '테스트1' WHERE ITEM_CODE = 'ITEM1' AND CUSTOMER_CODE = 'TEST1';
IF @@ROWCOUNT = 0
BEGIN
INSERT INTO TB_SMS_ITEMS (ITEM_CODE, CUSTOMER_CODE) VALUES ('ITEM1' , 'TEST1')
END
상품 테이블에 특정 조건으로 UPDATE 를 실행하는데 조건이 만족하지 않으면 INSRET 하도록 실행했다.
실행 결과

INSERT 된 데이터를 확인할 수 있다.
@@ROWCOUNT`를 사용하면 DML 문이 영향을 미친 행의 수를 확인하고 이에 따라 조건부로 작업을 수행할 수 있다
이를 통해 데이터 변경 작업을 더 유연하게 제어할 수 있다.
'SQL' 카테고리의 다른 글
[SQL 문제풀이] 상품을 구매한 회원 비율 구하기-프로그래머스 (0) | 2023.04.19 |
---|---|
[SQL 문제풀이] 식품분류별 가장 비싼 식품의 정보 조회하기-프로그래머스 (0) | 2023.04.13 |
[SQL 문제풀이] 년, 월, 성별 별 상품 구매 회원 수 구하기-프로그래머스 (0) | 2023.04.13 |
[SQL 문제풀이] 식품분류별 가장 비싼 식품의 정보 조회하기-프로그래머스 (0) | 2023.04.13 |
[SQL 문제풀이] 입양 시각 구하기(2)-프로그래머스 (0) | 2023.04.12 |