Zwykle nie ma różnicy wydajności między pojedynczym zapytaniem a logicznie równoważnym zapytaniem, które używa widoków.
Oracle ma przekształcenia optymalizujące, które mogą łączyć widoki z zapytaniem zewnętrznym; wypychanie predykatów, proste i złożone łączenie widoków itp. Pomyśl o widokach bardziej jak o makrze tekstowym, które tworzy duże zapytanie, a nie o funkcji zwracającej wiersze.
Na przykład w poniższym zapytaniu Oracle prawdopodobnie będzie wystarczająco sprytny, aby wypchnąć predykat z kolumny klucza podstawowego do widoku. Chociaż sam widok może zwrócić miliony wierszy, po uruchomieniu całego zapytania Oracle zastosuje najpierw predykat do kolumny klucza podstawowego.
select *
from view_returns_millions_of_rows
where primary_key_value = 1;