>>Why you're using OR conitions for M2.NoDetailType instead of much simpler to read IN condition?
>
>The purpose of the message was about the issue I raised in regards to the update operation. It was not intended for optimization verification.
It doesn't matter - my comment still stands and you can apply this suggestion.
And yes, it's commonly known fact that INNER JOIN may produce more records than EXISTS and IN subquery (they are different though often used with the same purpose).
Also recently Hugo found an interesting case when IN subquery behaved differently than EXISTS because of NULLs involved.
If it's not broken, fix it until it is.
My Blog