回覆列表
-
1 # 使用者7695790314926
-
2 # 使用者3136867717565
其實是可以的,用物化查詢建表就可以:
create table new_table_name as
(select a.serv_number,b.user_id
from table_name1 a,table_name2
where a.serv_number=b.serv_number);
data initially deferred refresh deferred;
refresh table new_table_name;
第一部分是建表結構,加上後面兩句就可以把資料重新整理進去了,只不過有個條件就是:table_name1 和 table_name2都不能是像這樣物化查詢建出來的表
不明白的是,就為了一筆交易,涉及的資料是全表嗎,為什麼要鎖表,鎖紀錄就好了啊。具體的讀時提前鎖紀錄就是select .. for update. 這可以認為是悲觀鎖的做法。或者改隔離級別為RS