A livello concettuale, sì, una vista è solo una query memorizzata che l'ottimizzatore combinerà con qualsiasi altro join e predicato aggiunto nel codice per produrre un piano di query ottimale. In teoria, l'utilizzo di una vista non dovrebbe essere diverso dalla replica della "query dei mostri" ripetutamente nel tuo codice. E nella misura in cui il tuo team DBA potrebbe essere in grado di fare qualcosa per migliorare le prestazioni della query, vederlo in una vista potrebbe rendere più facile per loro migliorare in modo trasparente le prestazioni di tutte le tue query.
Ora, quando si arriva tra le erbacce, è del tutto possibile che l'utilizzo di una vista di migliorare le prestazioni di alcune query e degradare le prestazioni di altre query rispetto a replicare la query mostro perché provoca l'ottimizzatore di scegliere un piano di query diverso. Poiché l'ottimizzatore sta prendendo in considerazione 10 di migliaia di piani di query e prende molte decisioni su quali rami seguire e quali abbandonare, è difficile sapere in anticipo quali query trarranno beneficio da una vista e che potrebbero essere danneggiate. Diamine, spesso è difficile sapere perché una particolare query è stata migliorata o danneggiata mettendo in una certa logica una vista a meno che non ti piaccia andare in profondità nei file di traccia 10053. Per la maggior parte degli sviluppatori che scrivono la maggior parte delle query, è ragionevolmente sicuro assumere che la presenza di una vista non avrà un impatto significativo sulle prestazioni.