Io a capire che non si può avere ORDER BY
in una visualizzazione. (Almeno in SQL Server 2012 con cui sto lavorando)
Comprendo anche che il modo "corretto" di ordinare una vista consiste nel mettere una dichiarazione ORDER BY
attorno alla SELECT
query.
Ma essendo relativamente nuovo all'SQL pratico e agli usi delle viste, vorrei capire perché questo è fatto in base alla progettazione. Se ho seguito correttamente la cronologia, una volta era possibile ed è stato esplicitamente rimosso da SQL Server 2008 e così via (non citarmi sulla versione esatta).
Tuttavia, il miglior motivo per cui riesco a capire perché Microsoft ha rimosso questa funzionalità è perché "una vista è una raccolta di dati non ordinata".
Suppongo che ci sia una buona ragione logica per cui una vista dovrebbe essere ordinata. Perché una vista non può essere solo una raccolta di dati appiattita? Perché specificamente non ordinato? Non sembra così difficile trovare situazioni in cui (almeno per me / IMHO) sembra perfettamente intuitivo avere una vista ordinata.