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
बयान।