PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Werden PostgreSQL VIEWS bei jeder Abfrage neu erstellt?

Eine Ansicht ist nichts anderes als eine Abfrage mit einem Namen. Es gibt mögliche leistungsbezogene Optimierungen, die einige DBMS besser realisieren als andere (pgSQL scheint auf der besseren Seite zu sein), wie die Wiederverwendung des Abfrageplans, die zwischengespeicherte Zugriffskontrolle usw.

Am Ende des Tages können Sie jedoch fast immer davon ausgehen, dass sich eine Ansicht so verhält, als würde sie die SQL direkt ausgeben. Mit dem Unterschied, dass Sie Zugriff auf diese Abfrage gewähren können, ohne Zugriff auf die zugrunde liegenden Tabellen zu gewähren.

Es gibt Optimierungen, die Sie vornehmen könnten, um das Verhalten zu ändern (sie halb tabellenartig zu machen) und die in pgSQL existieren oder nicht existieren könnten, wie materialisierte Ansichten (sorry, keine Ahnung von pgSQL), aber das ist nur Spitzfindigkeit.