2013-07-31 3 views
2

특정 변수에 따라 다른 WHERE 기준을 허용하려면 CASE WHEN 문을 WHERE 절 안에 사용하고 싶습니다. 나는 그것이 어떻게 생겼는지에 대한 생각을 가지고 있지만 가능한지 또는 어떤 구문을 사용해야하는지 모릅니다.SQL에서 스위치 케이스 절

나는 그것이 같은 사용하고 싶은 : @var의 각 인스턴스에 대한 WHERE 조건이 다른

SELECT * FROM Table1 
WHERE 
CASE WHEN @var = 1 THEN ID = 5 END, 
CASE WHEN @var = 2 THEN Name = 'Bob' END, 
CASE WHEN @var = 3 THEN Color = 'Green' 

입니다. 어떤 도움을 주셔서 감사합니다.

답변

4

당신은에 대한 CASE 필요하지 않습니다 : 내가 너무 멍청 해요

SELECT * FROM Table1 
WHERE 
(@var = 1 AND ID = 5) OR 
(@var = 2 AND Name = 'Bob') OR 
(@var = 3 AND Color = 'Green') 
+0

... 감사합니다 순전히! – AToya