SQL: sentencia de caso en orden por cláusula

http://msdn.microsoft.com/en-us/library/ms181765.aspx

Veo el sql abajo del enlace de arriba:

SELECT BusinessEntityID, SalariedFlag
FROM HumanResources.Employee
ORDER BY CASE SalariedFlag WHEN 1 THEN BusinessEntityID END DESC
    ,CASE WHEN SalariedFlag = 0 THEN BusinessEntityID END;
GO

Aquí hay un resultado que obtengo:

BusinessEntityID, SalariedFlag

7,1

5,1

3,1

1,1

2,0

4,0

6,0

8,0

¿Alguien podría explicar por qué los registros con el mismo salariedFlag están uno al lado del otro y por qué salariedFlag = 1 chunk está por encima del salariedFlag = 0 chunk?

Respuestas a la pregunta(4)

Su respuesta a la pregunta