delphi4arab منتديات دلفي للعرب
ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث (/showthread.php?tid=5053)



ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - cosinuszero - 24-03-2013

السلام عليكم و رحمة الله و بركاته

ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث ؟
عندي 3 جداول كل جدول به 3 حقول الحقل الاول الاسم.. الثاني العلامة..الثالث السنة
الاستعلام ل1لحصول على جدول واحد فيه الاسم و مجموع علامته من الجدوال الثلاث لأنها نفس الاسماء في الجداول الثلاثة.

مثال الجدول1 فيه
أحمد 9
علي 7
عمر 11

الجدول2
أحمد 8
علي 12
عمر 10

الجدول3
أحمد 13
علي 10
عمر 10

النتيجة في جدول جديد
أحمد 30
علي 29
عمر 31


ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - Najy Ibraheem - 24-03-2013

السلام عليكم...

كود :
SELECT Table1.StdName, Table1.Marks + Table2.Marks + Table3.Marks AS SumOfMarks FROM (Table1 INNER JOIN Table2 ON Table1.StdName = Table2.StdName) INNER JOIN Table3 ON Table1.StdName = Table3.StdName

على اعتبار الجداول الثلاثة هي Table1 و Table2 و Table3 و أن اسم حقل اسم الطالب هو StdName في الجداول الثلاثة، و أن اسم حقل الدرجة هو Marks في الجداول الثلاثة.

نرجو الاستفادة و السلام.


ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - Lam.Abdeldjalil - 24-03-2013

السلام عليكم

بإستخدام union
كود :
SELECT tabSum.StdName, sum(tabSum.Marks) as sumMarks from ( SELECT StdName, Marks from table1 union SELECT StdName, Marks from table2 union SELECT StdName, Marks from table3 ) as tabSum group by tabSum.StdName
بالتوفيق


ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - cosinuszero - 25-03-2013

بارك الله فيكم
هناك إضافة فقط و هي أن "احمد" يمكن أن يتواجد في الجدول الاول فقط
و أن "علي" يمكن أن يتواجد مرتين في الجدول الثاني مثلا
الجدول الاول
مثال الجدول1 فيه
أحمد 9
علي 7
عمر 11

الجدول2

علي 12
علي 13
عمر 10

الجدول3
علي 10
عمر 10
علي 9
عمر 5

النتيجة في جدول جديد
احمد 9
علي 42
عمر 36

مع العلم أن "علي" مكرر ليس تشابه أسماء بل هو نفسه مكرر عدة مرات


ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - Lam.Abdeldjalil - 25-03-2013

السلام عليكم

يمكنك القيام بعملية الجمع لكل جدول داخل
كود :
SELECT tabSum.StdName, sum(tabSum.Marks) as sumMarks from ( )
حاول Rolleyes

بالتوفيق


ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - cosinuszero - 26-03-2013

أخي عبد الجليل والله لقد حاولت عشرات المرات إن لم أقل المئات قبل أن أطرح السؤال في المنتدى لكن في كل مرة أحصل على نتيجة خاطئة.


ما هو استعلام sql جمع نتائج ثلاث جداول بجدول ثالث - cosinuszero - 26-03-2013

شكرا لك أخي عبد الجليل لقد وجدت الحل و هو بتغيير union بـــ union all

بارك الله فيكم.
السلام عليكم و رحمة الله و بركاته