I compreender que você não pode ter ORDER BY
em uma exibição. (Pelo menos no SQL Server 2012, estou trabalhando com)
Também entendo que a maneira "correta" de classificar uma exibição é colocando uma declaração ORDER BY
ao redor da SELECT
consulta.
Mas, sendo relativamente novo no SQL prático e no uso de visualizações, gostaria de entender por que isso é feito por design. Se eu segui o histórico corretamente, isso já foi possível e foi explicitamente removido do SQL Server 2008 e assim por diante (não me cite na versão exata).
No entanto, o melhor motivo pelo qual a Microsoft removeu esse recurso é porque "uma exibição é uma coleção de dados não classificada".
Suponho que exista uma boa razão lógica para o motivo de uma Visualização não ser classificada. Por que uma visão não pode ser apenas uma coleção achatada de dados? Por que especificamente não classificado? Não parece difícil chegar a situações em que (pelo menos para mim / IMHO) parece perfeitamente intuitivo ter uma visão ordenada.