本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
具體化檢視查詢
您可以透過參考作為資料來源的具體化視觀表名稱在任何 SQL 查詢中使用具體化視觀表,就如同資料表或標準檢視。
當查詢存取具體化視觀表時,其只會看見最近一次重新整理後儲存在具體化視觀表中的資料。因此,查詢可能無法看見具體化視觀表所對應基底資料表中所有最新的變更。
如果其他使用者希望查詢具體化視觀表,具體化視觀表的擁有者會將 SELECT 許可授予那些使用者。其他使用者不需要對基礎的基底資料表具備 SELECT 許可。具體化視觀表的擁有者也可以撤銷其他使用者的 SELECT 許可,防止他們查詢具體化視觀表。請注意,其他使用者仍需要結構描述上的 USAGE 許可,其中包含具體化視觀表的基礎資料表。
如果具體化視觀表的擁有者不再擁有基礎基礎資料表的本機 SELECT 許可:
擁有者無法再查詢具體化視觀表。
其他對具體化視觀表擁有 SELECT 許可的使用者無法再查詢具體化視觀表。
這僅限於本機許可。查詢具體化視觀表時,不會驗證 Lake Formation 所管理許可的變更。這表示如果基礎基礎資料表由 Lake Formation 管理,且在 Lake Formation 中撤銷資料表上的選取許可,您仍然可以查詢具體化檢視。
以下範例會查詢 tickets_mv
具體化視觀表。如需用來建立具體化視觀表的 SQL 命令相關資訊,請參閱 CREATE MATERIALIZED VIEW。
SELECT sold
FROM tickets_mv
WHERE catgroup = 'Concerts';
因為查詢結果是預先運算的,因此無須存取基礎資料表 (category
、event
和 sales
)。Amazon Redshift 可以直接從 tickets_mv
傳回結果。