我想像在名為 ca 的新表中一樣計算營業額
create table ca as (select sum(a.prixvente * c.qte)as ca , c.datec as datee from article a , command c where a.ida = c.ida and c.datec
= c.datec group by c.datec ) ;
我有表格文章(idarticle, priceBuying, priceSale, quantity),表格命令有(idarticle, quantity, dateSale),我想每天自動計算營業額并插入 ca ,但問題是當我將新值插入命令時 ca 的值沒有使用 oracle 更新D b。
uj5u.com熱心網友回復:
create table as select創建一個表并使用它運行時的資料填充它select。沒有任何東西會自動更新表格。
您當然可以撰寫代碼來insert為隨后的幾天(和/或update舊行)撰寫新資料,然后安排該代碼在合理的時間點(即午夜或凌晨 2 點或其他時間)運行。
然而,我的猜測是,你真的想創建一個視圖而不是一個表。視圖只是一個存盤的查詢,因此每次查詢視圖時都會重新運行。
create or replace view ca
as
select sum(a.prixvente * c.qte)as ca ,
c.datec as datee
from article a ,
commande c
where a.ida = c.ida
and c.datec = c.datec
group by c.datec
您還可能希望創建一個materialized view按特定計劃自動重繪 的計劃。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/454987.html
上一篇:鏈接表還需要關系嗎?
下一篇:如何設計關系資料庫模式?[復制]
