sql >> Base de Datos >  >> RDS >> Sqlserver

SQL:cláusula IF dentro de la cláusula WHERE

Use una declaración CASE
ACTUALIZAR: La sintaxis anterior (como lo señalaron algunas personas) no funciona. Puede usar CASE de la siguiente manera:

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

O puede usar una instrucción IF como @N. señala J. Reed.