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

सबक्वेरी रिटर्निंग एकाधिक पंक्तियों के साथ पंक्ति अद्यतन कर रहा है

Oracle पर आप उन प्रश्नों को संलग्न कर सकते हैं जो कोष्ठक में केवल एक पंक्ति (स्केलर सबक्वेरी) लौटाते हैं और उनका उपयोग करते हैं जैसे आप चर/कॉलम का उपयोग करेंगे:

UPDATE Table1 t1
SET D = (SELECT t2.D + t3.D 
         FROM Table2 t2
             ,Table3 t3
         WHERE t1.P = t2.P 
           AND t1.A = t3.A);

यदि सबक्वेरी एक से अधिक पंक्तियाँ लौटाती है तो आप शायद सबक्वेरी में SUM () का उपयोग करना चाहते हैं। संपादित करें:यदि आप सबक्वेरी में टेबल्स में शामिल नहीं होते हैं, तो आपको संभवतः इसके बजाय दो सबक्वेरी का उपयोग करना चाहिए।

UPDATE Table1 t1
SET D = (SELECT sum(t2.D) 
         FROM Table2 t2
         WHERE t1.P = t2.P)
        +
        (SELECT sum(t3.D)
         FROM Table3 t3
         WHEREt1.A = t3.A)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-28040:कोई मिलान प्रमाणीकरण प्रोटोकॉल अपवाद नहीं

  2. Grails 2.0.1 . के साथ Oracle 10g CLOB का उपयोग करना

  3. HikariCP पास Oracle कस्टम प्रकार

  4. org.hibernate.tool.schema.spi.CommandAcceptanceException:आदेश निष्पादित करने में असमर्थ

  5. Oracle SQL डेवलपर से Excel में डेटा कैसे निर्यात करें?