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

कुछ तालिका के साथ जुड़ने पर अद्यतन क्वेरी के साथ सिंटैक्स त्रुटि

Oracle join . का समर्थन नहीं करता है update . में वाक्य रचना:

UPDATE T123
    SET COL1 = 1,
        VER1 = VER1 + 1
    WHERE EXISTS (SELECT 1 FROM WAPTDT_123 T WHERE T123.REQUEST_ID = T.NUM_FLD);

यह मानक SQL है और इसे किसी भी डेटाबेस में काम करना चाहिए।

आपकी क्वेरी में अन्य समस्याएं भी हैं। . . उपश्रेणी कोष्ठक में नहीं है, inner join कोई पहली तालिका नहीं है।

संपादित करें:

आप इस क्वेरी को उस सबक्वेरी के साथ लिख सकते हैं:

UPDATE T123
    SET COL1 = 1,
        VER1 = VER1 + 1
    WHERE T123.REQUEST_ID IN (SELECT C1 FROM ( SELECT T.NUM_FLD C1 FROM WAPTDT_123 T) TAB );

मैंने इसे एक IN . में बदल दिया है , सिर्फ इसलिए कि वह दूसरा विकल्प है। आप अभी भी EXISTS का उपयोग कर सकते हैं ।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MyBatis का उपयोग करके Oracle संग्रहीत कार्यविधि में जावा वस्तुओं की सूची कैसे पास करें?

  2. एक कर्सर को सशर्त रूप से परिभाषित करें

  3. ओरेकल में ईएमपी तालिका में शीर्ष तीन उच्चतम वेतन कैसे प्राप्त करें?

  4. ओरेकल में कास्ट () फ़ंक्शन

  5. पीएलएसक्यूएल :नया और :पुराना