ROW_NUMBER kräver en ORDER BY klausul syntaktisk. Du kan inte använda den utan en. SELECT NULL är ett hack för att stänga av felet utan att upprätthålla någon särskild order. I det här fallet behöver vi inte verkställa någon order, så det snabbaste alternativet är att använda SELECT NULL .
Optimeraren ser igenom detta trick, så det har ingen körtidskostnad (detta påstående kan enkelt verifieras genom att titta på exekveringsplanen).