Tampilan terwujud akan menjadi pilihan bagus untuk apa yang ingin Anda lakukan. Dengan cara ini Anda dapat menulis kueri satu kali untuk tampilan, lalu membuat data dalam tampilan yang terwujud disegarkan sesering yang Anda inginkan. Anda dapat memiliki pekerjaan yang menyegarkan data sekali per malam, pada akhir pekan, atau frekuensi apa pun yang Anda pilih.
Setelah tampilan terwujud dibuat, Anda juga dapat menambahkan indeks di atas tampilan terwujud untuk membantu kinerja kueri jika Anda mau.
Contoh singkat tentang cara membuat tampilan terwujud dapat dilihat di bawah ini.
CREATE TABLE sale
(
product_id NUMBER,
sale_date DATE,
sale_amount NUMBER
);
INSERT INTO sale (product_id, sale_date, sale_amount)
VALUES (124, DATE '2019-02-01', 40.25);
INSERT INTO sale (product_id, sale_date, sale_amount)
VALUES (124, DATE '2019-02-01', 80.99);
INSERT INTO sale (product_id, sale_date, sale_amount)
VALUES (124, DATE '2020-02-01', 30.50);
INSERT INTO sale (product_id, sale_date, sale_amount)
VALUES (124, DATE '2020-02-01', 46.75);
CREATE MATERIALIZED VIEW sales_summary
BUILD IMMEDIATE
REFRESH FORCE ON DEMAND
AS
SELECT product_id,
SUM (sale_amount) AS annual_sales,
MAX (sale_amount) AS max_price,
MIN (sale_amount) AS min_price,
EXTRACT (YEAR FROM sale_date) AS year
FROM sale
GROUP BY product_id, EXTRACT (YEAR FROM sale_date);
Hasil
select * from sales_summary;
PRODUCT_ID ANNUAL_SALES MAX_PRICE MIN_PRICE YEAR
_____________ _______________ ____________ ____________ _______
124 121.24 80.99 40.25 2019
124 77.25 46.75 30.5 2020