ビューは単なるSQLステートメントです。それらは、基礎となるSQLクエリよりも遅くも速くもありません。
ただし、他の複雑なビューの上に構築された複雑なビュー(マルチテーブルの結合と集計)を使用すると、オプティマイザーが混乱して自分自身をアウトスマートにしようとし、実行プランが非常に悪くなる可能性があります。制約がなく、参照整合性が設定されていない場合、問題はさらに悪化する傾向があります。
最後の注意点は、データベースからデータを引き出して元に戻すだけの場合は、代わりにデータベースで操作全体を実行する方がパフォーマンスが向上する可能性があるということです。たとえば、データベースから「注文明細」を取得してから、「注文ヘッダー」を「注文合計数量」で更新するとします。この場合、代わりに次のようなことを行う必要があります。
merge
into order_header h
using (select order_id, sum(order_qty) as order_total_qty
from order_line
group by order_id
) l
on (h.order_id = l.order_id)
when matched then
update
set h.order_total_qty = l.order_total_qty;