2012-09-24 56 views
1

我有一個特定的查詢,我必須每天都做一次 這個查詢創建一個表,顯示每天的某個總和數量 相反,我想在物化查詢中按順序執行不是爲了創造每 這裏一天是查詢:Oracle:創建一個Matrialized視圖

create table close_qty 
as 
select item_code,item_conc_code,tran_bran_code,sum(tran_qty) bal_qty 
from tranhist a,itemmast b 
where a.tran_item_code = b.item_code 
group by item_code,item_conc_code,tran_bran_code 

我想創建一個物化視圖,但我發現了以下錯誤

ERROR at line 1: 
ORA-00901: invalid CREATE command 

這裏是我的查詢

CREATE MATERIALIZED VIEW vwCloseQty 
AS 
select item_code,item_conc_code,tran_bran_code,sum(tran_qty) bal_qty 
from tranhist a,itemmast b 
where a.tran_item_code = b.item_code 
group by item_code,item_conc_code,tran_bran_code 

好心的建議是否會影響性能,我怎麼能解決這個錯誤

回答

1

也許

CREATE MATERIALIZED VIEW vwCloseQty(item_code,item_conc_code,tran_bran_code, bal_qty) 
as 
select item_code,item_conc_code,tran_bran_code,sum(tran_qty) 
from tranhist a,itemmast b 
where a.tran_item_code = b.item_code 
group by item_code,item_conc_code,tran_bran_code; 

你最好還是要刷新此,每天雖然 - 所以,如果你」每天只運行一次查詢,一個物化視圖並不會真的起作用。

+0

還是一樣的error.as刷新每一天我可以實現刷新命令。有沒有什麼辦法可以解決問題 –

+0

嗯,這裏沒有oracle實例,看起來不錯 - 看看這個小組等等,看看它什麼時候開始工作,或者做'創建物化視圖vwCloseQty as選擇* from tranhist where 1 = 0'從那裏開始建立。 – daven11

+0

同樣的錯誤INVALID創建命令我正在使用oracle SQL * plus不知道這是否會有所幫助 –