Предполагам, че искате някакво динамично поведение на вашия WHERE
клауза, без да се налага динамично изграждане вашето WHERE
клауза.
С един параметър можете да използвате ISNULL
(или COALESCE
) като това:
SELECT * FROM Table WHERE ID = ISNULL(@id, ID)
което позволява NULL
параметър за съвпадение на всички. Някои предпочитат по-дългото, но по-ясно:
SELECT * FROM Table WHERE (@id IS NULL) OR (ID = @id)