यदि t1 और t2 के बीच या t2 और t3 के बीच एक-से-अनेक संबंध है, तो आपको t1 में प्रत्येक पंक्ति के लिए कई मैच मिलेंगे। यदि आप जानते हैं कि t3 की सभी पंक्तियाँ जो t1 में समान पंक्ति से संबंधित हैं, का d में समान मान है, तो आप DISTINCT
का उपयोग कर सकते हैं (समान) डुप्लिकेट निकालने के लिए।
UPDATE table1 t1
SET t1.c = (select DISTINCT t3.d
from table2 t2, table3 t3
where t2.b = t3.b and t1.a = t2.a)
WHERE EXISTS ( SELECT 1 FROM table2 t2, table3 t3 WHERE t1.c = t3.c and t1.a = t2.a);