안녕하세요 ^ㅡ^ DB 사랑에서 많이 배우는 초보입니다.
현재 쿼리를 짜다가 문득 궁금한 점이 생겨 질문 드립니다.
간단하게 아래와 같은 프로시저가 있는데요. @v_Type A면 필드 1 ~ 3를 업데이트합니다.
질문은 전체 A,B,C Type을 업데이트 하거나 A, C만 업데이트 한다면 지금 구조로는 불가능해 보이는데. 뭔가 방법이 있나요?
ALTER PROCEDURE [dbo].[sp_Process]
(
@v_Type VARCHAR(10),
@v_1 INT,
@v_2 INT,
@v_3 INT
)
AS
BEGIN
SET @v_RetMessage = 'None'
BEGIN TRY
IF @v_Type = 'A'
BEGIN
UPDATE tbl_Table
SET f_PlusCount = @v_1
WHERE f_ProductID = '1000002481'
UPDATE tbl_Table
SET f_PlusCount = @v_2
WHERE f_ProductID = '1000002482'
UPDATE tbl_Table
SET f_PlusCount = @v_3
WHERE f_ProductID = '1000002483'
END
ELSE IF @v_Type ='B'
BEGIN
UPDATE tbl_Table
SET f_PlusCount = @v_1
WHERE f_ProductID = 'world01_g'
UPDATE tbl_Table
SET f_PlusCount = @v_2
WHERE f_ProductID = 'world02_g'
UPDATE tbl_Table
SET f_PlusCount = @v_3
WHERE f_ProductID = 'world03_g'
END
END
|