SQL: IF clause within WHERE clause

Use a CASE statement
UPDATE: The previous syntax (as pointed out by a few people) doesn’t work. You can use CASE as follows:

WHERE OrderNumber LIKE
  CASE WHEN IsNumeric(@OrderNumber) = 1 THEN 
    @OrderNumber 
  ELSE
    '%' + @OrderNumber
  END

Or you can use an IF statement like @N. J. Reed points out.

Leave a Comment