यह आमतौर पर USING क्लॉज में निर्दिष्ट क्वेरी में डुप्लिकेट के कारण होता है। इसका शायद मतलब है कि TABLE_A एक पैरेंट टेबल है और एक ही ROWID को कई बार लौटाया जाता है।
आप अपनी क्वेरी में DISTINCT का उपयोग करके समस्या को जल्दी से हल कर सकते हैं (वास्तव में, यदि 'Y' एक स्थिर मान है तो आपको इसे क्वेरी में डालने की भी आवश्यकता नहीं है)।
मान लें कि आपकी क्वेरी सही है (अपनी टेबल नहीं जानते) आप कुछ इस तरह कर सकते हैं:
MERGE INTO table_1 a
USING
(SELECT distinct ta.ROWID row_id
FROM table_1 a ,table_2 b ,table_3 c
WHERE a.mbr = c.mbr
AND b.head = c.head
AND b.type_of_action <> '6') src
ON ( a.ROWID = src.row_id )
WHEN MATCHED THEN UPDATE SET in_correct = 'Y';