대답은 간단하지만 나는 잠시 동안 검색을 해왔고이 작업을 수행하지 못하는 것 같습니다 ... Case 문 결과를 기반으로 변수를 설정하려고합니다. 길이/75는 우리가 1이면 1 항에 따라 반환 1 이상이면 두 개의 열 CASE 결과 변수를 SQL로 설정합니까?
dbo.MY_TABLES.MY_RULESET,
dbo.MY_TABLES.MY_SPECIFICATION
내 경우 문
의그래서 확인하고 길이는, 우리는 (1에서) I를 값을 반환 확인 이 두 결과를 함께 추가하고 사례 결과에 따라 추가가 필요할 때 문제가 발생하는 곳입니다. 여기
은 병렬로 평가하는 경우 다음과 같이 계산된다 SELECT
절에 샘플
Declare @SpecValue FLOAT
Declare @RuleValue FLOAT
SELECT
CAST(LEN(MY_SPECIFICATION) AS FLOAT)/75 as Score1,
CAST(LEN (MY_RULESET) AS FLOAT)/75 AS Score2,
CASE
WHEN (CAST(LEN(MY_SPECIFICATION) AS FLOAT)/75) >1 Then '1'
ELSE (Round(CAST(LEN(MY_SPECIFICATION) AS FLOAT)/75,2))
END as Spec1_RuleLength,
CASE
When (CAST(LEN (MY_RULESET) AS FLOAT)/75) >1 Then '1'
ELSE (Round(CAST(LEN (MY_RULESET) AS FLOAT)/75,2))
END as Eval2_RuleLength,
dbo.MY_TABLES.MY_RULESET,
dbo.MY_TABLES.MY_SPECIFICATION
FROM MY_TABLES
당신은 unqoute해야 '1' '후 Then' 당신이 번호로 사용하려는 경우. 또한 표시되는 오류 메시지는 무엇입니까? –
'1'에 대한 좋은 지적 - 감사. 글쎄,이게 효과가 있기를 바랐다. Set @SpecValue = Case ......... 이 오류가 발생한다. 'Set'키워드 근처에 구문이 틀리다. – user3302303