Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

कथन से चयन में तालिका प्रकार का उपयोग कैसे करें?

एसक्यूएल में आप केवल तालिका प्रकार का उपयोग कर सकते हैं जो स्कीमा स्तर पर परिभाषित किया गया है (पैकेज या प्रक्रिया स्तर पर नहीं), और इंडेक्स-बाय टेबल (एसोसिएटिव सरणी) को स्कीमा स्तर पर परिभाषित नहीं किया जा सकता है। तो - आपको नेस्टेड टेबल को इस तरह परिभाषित करना होगा

create type exch_row as object (
    currency_cd VARCHAR2(9),
    exch_rt_eur NUMBER,
    exch_rt_usd NUMBER);

create type exch_tbl as table of exch_row;

और फिर आप इसे SQL में TABLE ऑपरेटर के साथ उपयोग कर सकते हैं, उदाहरण के लिए:

declare
   l_row     exch_row;
   exch_rt   exch_tbl;
begin
   l_row := exch_row('PLN', 100, 100);
   exch_rt  := exch_tbl(l_row);

   for r in (select i.*
               from item i, TABLE(exch_rt) rt
              where i.currency = rt.currency_cd) loop
      -- your code here
   end loop;
end;
/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ओरेकल - अपडेट जॉइन - गैर कुंजी-संरक्षित तालिका

  2. Oracle समवर्ती प्रबंधक

  3. Oracle के किसी अन्य उपयोगकर्ता को संग्रहीत कार्यविधि पर अधिकार प्रदान करना

  4. SQL डेवलपर में SQL स्टेटमेंट ट्यूनिंग

  5. .NET . का उपयोग करके Oracle में बल्क इंसर्ट