PDA

View Full Version : سوال: ترکیب دو جدول با 3 شرط



masoud903
جمعه 07 اردیبهشت 1397, 14:27 عصر
سلام خدمت دوستان و اساتید محترم
در بانک خودم یه جدول اصلی دارم و با استفاده از کوئری append اطلاعات جدید رو از جدول دوم میگیریم و به جدول اصلی یا اولی اضافه میکنیم
جدول اصلی (اولی)



کد پیگیری
a
b
c
d


1






2






3






4







جدول دوم



کد پیگیری
a
b
c
d


5






6






1






2









باید جدول نتیجه (بر اساس کد پیگیری )با توجه به 3 شرط زیر تهیه بشه

1- مشترکای بین دو جدول باشن(یعنی شماره پیگیری 1 و 2)
2- جدیدها از جدول دوم باشن(یعنی شماره پیگیری 5 و 6)
3- مواردی از جدول اولی که در جدول دوم نیستند حذف بشن(یعنی شماره پیگیری 3 و4)
یعنی جدول نتیجه باید مثل زیر باشه



کد پیگیری
a
b
c
d


1






2






5






6









چه جور باید عمل کنم؟ شرطش چیه؟ ایا میشه در کوئری append اعمال کرد؟

mazoolagh
شنبه 08 اردیبهشت 1397, 08:06 صبح
این در واقع تمرین کار کردن با join هست!
SELECT TABLE2.CODE
FROM TABLE2 LEFT JOIN TABLE1
ON TABLE2.CODE=TABLE1.CODE

masoud903
شنبه 08 اردیبهشت 1397, 08:56 صبح
با تشکر بخاطر جوابتون....
درسته نتایج رو بهم میده طبق 3 تا شرط فقط یه مشکلی داره
من جدول اولی رو جدول اصلی گرفتم یعنی جلوی هر کد پیگیری یه سری مطالب نوشتم با leftjoin موارد پیگیری (1و 2) از جدول دوم انتخاب میشن نه اولی ....یعنی مواردی که در جدول اولی(اصلی) وارد کردم رو از دست میدم
اینو چه جوری حل کنم؟

mazoolagh
شنبه 08 اردیبهشت 1397, 11:34 صبح
هر فیلدی از هر جدولی که نیاز دارین جلوی SELECT بیارین
اگر راحتترین میتونین RIGHT JOIN هم بکار ببرین - فرقی نمیکنه در نتیجه - خروجی دو کد زیر با هم یکسان است:
SELECT TABLE2.CODE
FROM TABLE2 LEFT JOIN TABLE1
ON TABLE2.CODE=TABLE1.CODE

SELECT TABLE2.CODE
FROM TABLE1 RIGHT JOIN TABLE2
ON TABLE2.CODE = TABLE1.CODE



جواب نگرفتین دیتابیس نمونه پیوست کنین روی همون راهنمایی کنم