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

¿Cómo consulta una columna int para cualquier valor?

Supongo que desea un comportamiento dinámico en su WHERE cláusula, sin tener que construir dinámicamente tu WHERE cláusula.

Con un solo parámetro, puede usar ISNULL (o COALESCE ) así:

 SELECT * FROM Table WHERE ID = ISNULL(@id, ID)

que permite un NULL parámetro para que coincida con todos. Algunos prefieren el más largo pero más explícito:

 SELECT * FROM Table WHERE (@id IS NULL) OR (ID = @id)