插入多表操作。
大部分插入操作是針對單錶操作的。但是oracle支援多表插入(insert)語句 。在資料倉儲方面的抽取、轉移和裝入(etl,extract transform and load)的例程方面方面你將頻繁的用到多表插入操作。
通過乙個多表插入,你能你可以通過乙個單一的資料來源,把資料裝載到多個資料表裡面。通過減少整個資料的路徑,來減少減少工作量,因此去的更快的輸出。
如果乙個when條件為真(true),相關的into語句被執行。如果沒有條件為真,為真,那麼else條款被執行。關鍵字all告訴資料庫,檢查when後面的
每乙個條件.另一方面,關鍵字first告訴資料庫當檢查when條件的第乙個條件為真是,停止檢查後續條件。
下面的例子,是乙個保險公司有兩個保險條款,財產和意外傷害在條款表裡。再是在資料市場裡,他們把這兩個表分成單獨的事實表。在每月裝入是,新的條款被增加到property_premium_fact 和cacuaty_premium_fact表裡。你就可以使用多表插入更加有效的增加行,這樣比使用兩個單獨的
插入(insert)語句個更加高效。例子如下:
insert first when policy_type = 'p' then into property_premium_fact(policy_id ,policy_nbr ,premium_amt) values (property_premium_seq.nextval ,policy_number ,gross_premium) when p.policy_type = 'c' then into property_premium_fact(policy_id ,policy_nbr ,premium_amt) values (property_premium_seq.nextval ,policy_number ,gross_premium) select policy_nbr ,gross_premium ,policy_type from policies where policy_date >= trunc(sysdate,'mm') - to_yminterval('00-01');
通過使用多表插入,insert語句,代替兩個單獨的插入語句,這樣的**塊
通過乙個單獨訪問表通道代替兩個訪問通道因此資料裝載更加高效。
oracle 資料庫多表插入詳解
插入多表操作。大部分插入操作是針對單錶操作的。但是oracle支援多表插入 insert 語句 在資料倉儲方面的抽取 轉移和裝入 etl,extract transform and load 的例程方面方面你將頻繁的用到多表插入操作。通過乙個多表插入,你能你可以通過乙個單一的資料來源,把資料裝載到多...
oracle 資料庫多表插入詳解
插入多表操作。大部分插入操作是針對單錶操作的。但是oracle支援多表插入 insert 語句 在資料倉儲方面的抽取 轉移和裝入 etl,extract transform and load 的例程方面方面你將頻繁的用到多表插入操作。通過乙個多表插入,你能你可以通過乙個單一的資料來源,把資料裝載到多...
oracle 資料庫多表插入詳解
插入多表操作。大部分插入操作是針對單錶操作的。但是oracle支援多表插入 insert 語句 在資料倉儲方面的抽取 轉移和裝入 etl,extract transform and load 的例程方面方面你將頻繁的用到多表插入操作。通過乙個多表插入,你能你可以通過乙個單一的資料來源,把資料裝載到多...