1
SQL Case 함수의 작동 방식을 더 잘 이해하려고합니다.SQL 사례 조건 이해
말 예를 들어 I 쿼리 및 값 1에 다음 코드 = 'ABCDE'
SELECT CASE ColumnName
WHEN value1 LIKE '%ABC%' THEN 'Hello'
WHEN value1 LIKE '%CDE%' THEN 'World'
ELSE 'Nothing'
END AS Answer
FROM TableName
이 코드가 반환됩니다 무엇에 의해 혼동하고 있습니다.
내가 HelloWorld를 반환해야한다고 생각했지만 비슷한 쿼리를 실행하여 Hello 만 반환합니다.
이유가 누구인지 설명 할 수 있습니까?
감사
I''후 predicate'을 CASE''후는 "'ColumnName' 말을하고 더 나은 거라고 WHEN' 동시에 구문 오류입니다. " – Serg
@Gordon Linoff @ https://connect.microsoft.com/SQLServer/feedback/details/690017/case-coalesce-wont-always-evaluate-in-textual-order –
@NeerajPrasadSharma를 확인하십시오. . . 나는 그것이 아마도 오류라고 동의합니다. 그러나 문제는'사례'가 반환하는 것이다. 느슨하게 "단락"을 해석하면 모든 표현식이 반환되기 전에 평가할 수 있습니다. . . 이들은 오류를 반환 할 수 있습니다. –