Apologies for being dense, but even after watching the video and reading the blog post, though I better understand why you're using `1 = (SELECT 1)`, I still don't understand why that pattern forces the optimizer to skip assigning the query as having a `trivial plan` or `simple parameterization`. Is it simply because it's a sub-query, where the optimizer doesn't know what may be in it at runtime so it has to in fact go down the actual road of optimizing the query further than if it were a known/constant value?
I was wondering about this. Thanks for the info!
There you go!
Mezcal and brisket, got it.
It’s a fairly simple checklist
Apologies for being dense, but even after watching the video and reading the blog post, though I better understand why you're using `1 = (SELECT 1)`, I still don't understand why that pattern forces the optimizer to skip assigning the query as having a `trivial plan` or `simple parameterization`.
Is it simply because it's a sub-query, where the optimizer doesn't know what may be in it at runtime so it has to in fact go down the actual road of optimizing the query further than if it were a known/constant value?
Yep, you can even simplify it in some cases to be something like SELECT (SELECT Id) FROM dbo.Whatever;
Slightly off topic, but I guess you also use DATA_COMPRESSION = PAGE on all your index creates too? I guess just to save space and logical reads
Just space. I don't care about logical reads: ruclips.net/video/kxwEkeBCbdE/видео.html
When dealing with wonky nonsense in plans, Instead of WHERE 1 = (SELECT 1), I smack the monitor and then blow in the USB port.
Throw the controller against the wall
Thanks for an interesting video! I wonder if “when 1=1” has the same effect.
I’m not sure I follow this one
Keep going... i like you haircut😊
Thank you 😁