2014-01-16 2 views
0

같은 값을 만족하는 다른 값을 가진 두 개의 다른 필드에 대한 값을 설정할 수 싶습니다.업데이트 및 동일한 사례 문을 사용하여 여러 필드를 설정하십시오.

예 :

DECLARE @RATE1 AS FLOAT 
DECLARE @RATE2 AS FLOAT 


UPDATE TABLE1 
SET CATEGORY = CASE WHEN DATE >= '16 JAN 2014' THEN 'NEW' 

그러나 동시에 나는 또한 속도 1 @ 설정하려는

=

WHEN DATE < '16 JAN 2014' THEN 'OLD' 
END 

그러나 그런 0.001

나는 또한 0.002

RATE2 = @ 설정하려는 동시에

어떻게 든 가능합니까?

+0

이 변수들 @ @ RATE1'과 @ @ RATE2'는 당신의 업데이트 문장과 관련이 있습니다 ??? –

+0

두 변수는 update 문과 동일한 기준에 의해 결정되므로 같은 시간에 설정하는 방법이 있는지 궁금합니다. – HL8

답변

0
UPDATE TABLE1 
SET CATEGORY = CASE WHEN DATE >= '16 JAN 2014' THEN 'NEW' 
        WHEN DATE < '16 JAN 2014' THEN 'OLD' 
       END 

변수에 값을 설정하기 위해 당신은 당신의 날짜가 VARCHAR 필드입니다 가정이

IF EXISTS (SELECT 1 FROM TABLE1 WHERE DATE >= '16 JAN 2014') 
    BEGIN 
     SET @RATE1 = 0.001; 
    END 
    ELSE 
    BEGIN 
     SET @RATE2 = 0.002; 
    END 

같은 별도의 문 뭔가가 필요하고 그것은 DD MMM의 YYY 형식으로 날짜 저장하고있다. 날짜 데이터를 저장하기위한 좋은 데이터 유형은 아닙니다.

+0

안녕하세요. 도움을 주셔서 감사합니다. 다시 기준을 반복하지 않아도 변수와 필드를 모두 설정하는 방법이 있었으면합니다. – HL8

+0

이것은 두 개의 다른 연산이므로 별도로 실행되므로 변수 할당 문을 조금 더 간단하게 만들 수 있습니다. –

관련 문제