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

मैं pl/sql में नेस्टेड टेबल से कॉलम कैसे अपडेट कर सकता हूं?

सिंटैक्स थोड़ा अस्पष्ट है, लेकिन मूल रूप से आपको MULTISET ऑपरेटर के साथ नेस्टेड तालिका में हेरफेर करने की आवश्यकता है।

update test 
set marks = marks multiset union all numberlist(42) 
where id_std = 1 

यह एक नए सेट (इस मामले में एक का एक सेट) के साथ मौजूदा सेट के निशान को जोड़ता है। यह रहा एक LiveSQL डेमो (फ्री Oracle Technet अकाउंट जरूरी)

इस दृष्टिकोण का लाभ यह है कि एक साथ कई मान जोड़ना आसान है:

update test 
set marks = marks multiset union all numberlist(23, 69) 
where id_std = 1 

नेस्टेड टेबल कॉलम सिद्धांत रूप में चतुर हैं लेकिन व्यवहार में अजीब हैं। SQL कथनों में उनका उपयोग करने से कुछ बदसूरत SQL हो सकते हैं। यदि आप उनका उपयोग करने जा रहे हैं तो आपको सभी MULTISET ऑपरेटरों से परिचित होना होगा। और जानें



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Fluent NHibernate और guid id के साथ काम करना

  2. pyodbc अपवाद args में कुछ अज्ञात वर्ण हैं

  3. पाइपलाइन फ़ंक्शन एक और पाइपलाइन फ़ंक्शन को कॉल करता है

  4. दिनांक प्रारूप YYYY-MM-dd HH-MM-ss को कैसे क्वेरी करें?

  5. SQL क्वेरी से एक निश्चित-चौड़ाई वाली फ्लैट प्रारूप आउटपुट फ़ाइल तैयार करें