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 .