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)