Adam and Tony both left comments indicating that either flavor of my proposed optional parameter syntax will result in a table scan, and that performance will (to appropriate Tony’s characterization) suck. That’s quite correct.
There’s one more syntax construction I need to take a look at, and I’ll try to get to that sometime this week (when I’m not busy relaxing.. :)). If that doesn’t work, I’ll capitulate defeat and admit that dynamic SQL is the one, true path for implementation of optional parameters in T-SQL.
I’ll be eating crow sometime later this week (or not.. :)). Until then..