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

oracle में किसी अन्य तालिका से तालिका अद्यतन करें

इस मामले में आपको नीचे दिए गए MERGE स्टेटमेंट का उपयोग करना चाहिए:

DECLARE
  l_date DATE:=TO_DATE('01/04/2017','DD/MM/YYYY');
BEGIN
  LOOP
    EXECUTE IMMEDIATE 'MERGE INTO EMPSHIFT E
USING SCHEDULEEMPLOYEES S
ON (S.EMPLOYEEID=E.EMPLOYEEID AND S.DAYDATE=TO_DATE('''||TO_CHAR(l_date)||''',''DD/MM/YYYY''))
WHEN MATCHED 
THEN UPDATE SET E."'||TO_CHAR(l_date)||'"=S.SHIFT';
    l_date:=l_date+1;
    EXIT
  WHEN l_date>TO_DATE('30/04/2017','DD/MM/YYYY');
  END LOOP;
END;

आपने उल्लेख किया है कि आप रिकॉर्ड्स को अपडेट करना चाहते हैं, लेकिन यदि आप लापता रिकॉर्ड्स (EMPLOYEEID को EMPSHIFT तालिका में गुम होने के लिए) सम्मिलित करना चाहते हैं, तो कृपया merge_insert_clause



  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. सार्वजनिक पर्यायवाची शब्द को सही तरीके से कैसे बनाया जाए

  3. मैं एक मूल्य को सीमित करने के लिए Oracle SQL में एक बाधा कैसे जोड़ूँ?

  4. आस्थगित खंड निर्माण सुविधा सक्षम नहीं (ORA-00439)

  5. ORA-01008:सभी चर बाध्य नहीं हैं। वे बंधे हुए हैं