How do I create a conditional WHERE clause?

Yatrix picture Yatrix · May 9, 2012 · Viewed 47.2k times · Source

I need to have a conditional where clause that operates as so:

Select *
From Table
If (@booleanResult)
Begin
  Where Column1 = 'value1'
End
Else
Begin
  Where column1 = 'value1' and column2 = 'value2'
End

Any help would be appreciated.

Answer

diaho picture diaho · May 9, 2012

Could you just do the following?

SELECT
    *
FROM
    Table
WHERE
    (@booleanResult = 1
    AND Column1 = 'value1')
OR
    (@booleanResult = 0
    AND Column1 = 'value1'
    AND Column2 = 'value2')