क्या आपको वाकई अतिरिक्त टेबल की ज़रूरत है?
आप एक साधारण क्वेरी के साथ वह डेटा प्राप्त कर सकते हैं जिसकी आपको आवश्यकता है, जिसे आप स्पष्ट रूप से एक दृश्य के रूप में बना सकते हैं यदि आप चाहते हैं कि यह एक तालिका की तरह दिखाई दे।
इससे आपको वह डेटा मिल जाएगा जिसकी आप तलाश कर रहे हैं:
select
account, bookdate, amount,
sum(amount) over (partition by account order by bookdate) running_total
from t
/
यह आपको डेटा दिखाने के लिए एक दृश्य बनाएगा जैसे कि यह एक तालिका थी:
create or replace view t2
as
select
account, bookdate, amount,
sum(amount) over (partition by account order by bookdate) running_total
from t
/
यदि आपको वास्तव में तालिका की आवश्यकता है, तो क्या आपका मतलब है कि आपको इसे लगातार अद्यतन करने की आवश्यकता है? या सिर्फ एक बंद? जाहिर है अगर यह एक है तो आप उपरोक्त क्वेरी का उपयोग करके "टेबल को चयन के रूप में बना सकते हैं"।
मेरे द्वारा उपयोग किया गया परीक्षण डेटा है:
create table t(account number, bookdate date, amount number);
insert into t(account, bookdate, amount) values (1, to_date('20080101', 'yyyymmdd'), 100);
insert into t(account, bookdate, amount) values (1, to_date('20080102', 'yyyymmdd'), 101);
insert into t(account, bookdate, amount) values (1, to_date('20080103', 'yyyymmdd'), -200);
insert into t(account, bookdate, amount) values (2, to_date('20080102', 'yyyymmdd'), 200);
commit;
संपादित करें:
जोड़ना भूल गया; आपने निर्दिष्ट किया है कि आप तालिका को ऑर्डर करना चाहते हैं - यह वास्तव में समझ में नहीं आता है, और मुझे लगता है कि आप वास्तव में मतलब है कि आप क्वेरी/दृश्य चाहते थे - ऑर्डरिंग आपके द्वारा निष्पादित क्वेरी का परिणाम है, कुछ ऐसा नहीं जो अंतर्निहित है तालिका (सूचकांक संगठित तालिकाओं और इसी तरह की अनदेखी)।