Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Szybkie odświeżanie widoku zmaterializowanego z klauzulą ​​HAVING?

Tak, dokumentacja nie wydaje się być dokładna.

Jako obejście możesz spróbować zaimplementować zagnieżdżone widoki zmaterializowane.

CREATE MATERIALIZED VIEW mv1 
REFRESH FAST ON COMMIT 
AS
SELECT col1,
       COUNT(col1) count_col1
FROM test_table
GROUP BY col1

ALTER MATERIALIZED VIEW mv1 ADD CONSTRAINT pk_mv1 PRIMARY KEY (col1)

CREATE MATERIALIZED VIEW LOG ON mv1 WITH PRIMARY KEY;

CREATE MATERIALIZED VIEW MV2 
REFRESH FAST ON COMMIT AS
SELECT col1,
       count_col1
FROM   mv1
WHERE  count_col1 > 1



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL nie rozpoznaje aliasu kolumny w klauzuli where

  2. Zapytanie wyboru JPA ze znacznikiem czasu i polami daty nie pobiera wyników

  3. Jak napisać zapytanie, które robi coś podobnego do GROUP_CONCAT MySQL w Oracle?

  4. Uzyskiwanie poprawnego czasu od daty Oracle w Solr DataImportHandler

  5. Wywołanie niezdefiniowanej funkcji oci_connect()