Jeg går ud fra, at du vil have noget dynamisk adfærd på din WHERE
klausul uden at skulle bygge dynamisk din WHERE
klausul.
Med en enkelt parameter kan du bruge ISNULL
(eller COALESCE
) sådan her:
SELECT * FROM Table WHERE ID = ISNULL(@id, ID)
som tillader en NULL
parameter for at matche alle. Nogle foretrækker det længere, men mere eksplicitte:
SELECT * FROM Table WHERE (@id IS NULL) OR (ID = @id)