Gör en UNION ALL
av de två påståendena:
SELECT *
FROM mytable
WHERE myid = @col
UNION ALL
SELECT *
FROM mytable
WHERE @col IS NULL
eller bara dela upp dem i en IF / ELSE
block av lagrade procedurer.
Oavsett vilket kommer optimeraren att kunna optimera frågorna separat och helt ignorera en av dem beroende på värdet på @col
.