استفسار حول كيفية استخدام FULL OUTER JOIN
استفسار حول كيفية استخدام FULL OUTER JOIN
اخي الفاضل : احمد
السلام عليكم ورحمة الله وبركاته
وكل عام وانتم بخير
اتمنى ان تركز معي في الشرح جيدا حتى لا اعيد وازيد في الشرح
اولا : عبارة FULL OUTER JOIN خاصة بـ SQL Server اما قاعدة البيانات اكسيس فلا يوجد بها هذه العبارة
ثانيا : لإنشاء FULL OUTER JOIN في الإستعلام فإننا نحتاج الى عمل عدة استعلامات بمواصفات خاصة حتى نحصل على استعلام توحيد
يجمع الإستعلامات التي سوف نقوم بإنشاءها .
حسب مثالك السابق يوجد لدينا جدولين وهما 2006 و 2007 وكل جدول يوجد به دول ( مجموع دولة ) و قيم Value لهذه الدول
1. سنقوم بعمل استعلام ونسميه مثلا Q1 ونضع فيه الجدول الأول 2006 والجدول الثاني 2007 ونربط بين الجدولين بعلاقة ناحية الدوله
وخاصية الربط الأولى ستكون ناحية الجدول 2007 بهذه الطريقة
وستكون نتائج الإستعلام بهذه الطريقة
2. سنقوم بعمل استعلام آخر Q2 بنفس الطريقة ولكن سوف نغير خاصية الربط للجدول الآخر بهذا الشكل
وستكون نتائج الإستعلام الثاني بهذه الطريقة
3. الآن نقوم بأخذ عبارات الـ SQL من الإستعلامين ثم نضعهما في استعلام توحيد بهذه الطريقة
SELECT [2006].country, Sum([2006].value) AS 2006, Sum([2007].value) AS 2007 FROM 2006 LEFT JOIN 2007 ON [2006].country = [2007].country GROUP BY [2006].country UNION SELECT [2007].country, Sum([2006].value) AS 2006, Sum([2007].value) AS 2007 FROM 2006 RIGHT JOIN 2007 ON [2006].country = [2007].country GROUP BY [2007].country
وكما تلاحظ ان جميع الدول موجوده في استعلام التوحيد بدون تكرار
بالتوفيق
يسلمو اخت زهرة
شكرا جزيلا
انا كنت عامل استعلام توحيد بس مو بالطريقة هاي ف شكرا الك
كل عام وانت بالف خير
بس في مشكلة صغيرة هلئ في التجميع للدول عم يجمع خطا مثلا بلجيكا في 2006 المفروض يكون المجموع 20 عم يطلع 40 وفي 2007 طلع 24 المفروض يكون 12
ويا ريت اغلبك معي انه نضيف الكود للاستعلام
بس بدي اتاكد انه هذا الكود صح
شكرا اختي زهرة
هذا الموضوع مغلق.

