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

डुप्लिकेट कुंजी का उपयोग करके मर्ज स्टेटमेंट को MYSQL में बदलना

MySQL में सही सिंटैक्स है:

INSERT INTO XYZ (PARENT_JOB_NAME, CHILD_JOB_NAME, FIRST_EXECUTION, SANDBOX, PLATFORM_NAME)
    SELECT ITRR.WORKFLOW_NAME, ITRR.INSTANCE_NAME,
           MIN(ITRR.START_TIME), ITRR.SUBJECT_AREA, 'INFORMATICA'
    FROM ABC IWRR JOIN
         DEF ITRR
         ON IWRR.WORKFLOW_RUN_ID = ITRR.WORKFLOW_RUN_ID 
    WHERE IWRR.USER_NAME IN ('XYZ') AND
          ITRR.RUN_STATUS_CODE <> 2
    GROUP BY ITRR.WORKFLOW_NAME, ITRR.INSTANCE_NAME, ITRR.SUBJECT_AREA
ON DUPLICATE KEY UPDATE FIRST_EXECUTION = VALUES(FIRST_EXECUTION);

उचित, स्पष्ट, मानक . के उपयोग पर ध्यान दें , पठनीय JOIN वाक्य - विन्यास। इसका इस्तेमाल करें।

प्रमुख परिवर्तन हैं

  • पुराने सिंटैक्स को ठीक करना.
  • कोष्ठक को हटाने की आवश्यकता नहीं है select . के लिए एक insert . . . select (हालांकि उन्हें शायद अनुमति है)।
  • टेबल एलियास को हटाना, जिसकी निश्चित रूप से अनुमति नहीं है।
  • डुप्लिकेट कुंजी पर on duplicate key बयान।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. समग्र प्राथमिक कुंजी के साथ Yii मॉडल

  2. ASP.NET/पहचान त्रुटि:इकाई प्रकार ApplicationUser वर्तमान संदर्भ के लिए मॉडल का हिस्सा नहीं है

  3. डेटाबेस में प्रत्येक तालिका में mysql क्वेरी लागू करें

  4. जेपीए @Version फ़ील्ड में वृद्धि नहीं होती है

  5. जांचें कि PHP पीडीओ का उपयोग कर उपयोगकर्ता नाम मौजूद है या नहीं