저장 프로 시저와 몇 가지 부울 변수 (Bit
)가 있습니다.
특정 변수가 False 인 경우 WHERE
문을 넣고 싶습니다.조건부/선택적 where 문
은 내가 이런 식으로 뭔가를 할 수 알고 :
IF (@myBoolean = 1)
BEGIN
SELECT * FROM myTable
END
ELSE
SELECT * FROM myTable WHERE myTable.Foo = 'Bar'
WHERE
문이 optionnal 만들 수있는 방법이 있나요? 왜냐하면 나는 너무 많은 불리언 변수가 있기 때문에 각각의 가능성에 대해 다른 쿼리를하고 싶지는 않습니다.
이 내가 (나는 그것이 작동하지 않습니다 알고) 생각하고있는 것입니다 :
SELECT * FROM myTable
CASE WHEN @myBoolean = 0
THEN WHERE myTable.Foo = 'Bar'
ELSE --Do nothing
잘못 무엇 'SELECT * myTable에 FROM WHERE @myBoolean = 1 (myTable.Foo ='바 '와 @myBoolean = 0)'? –