omran2015 قام بنشر منذ 2 ساعات قام بنشر منذ 2 ساعات عندي جدول باسم TBL_Final1 يتم فيه حفظ درجات الطلاب عن طريق الفيجوال دوت نت 2019 المشكلة أريد عرض الدرجات عمودياً في التقرير حسب الفصول الدراسية وفق الشرح الآتي: درجات الفصل الأول درجات الفصل الثاني مجموع درجات الفصلين أعمال امتحان أعمال امتحان المجموع الطريقة في حفظ الدرجات أفقياً حسب المصفوفات التالية: SemesterID = رقم الفصل الدراسي 1 = الفصل الأول 2 = الفصل الثاني 3 = مجموع درجات الفصلين حقول الدرجات حسب عدد المواد (9) مواد دراسية 1- المصفوفة on = درجات أعمال الفصلين الأول والثاني 2- المصفوفة to = درجات امتحان الفصلين الأول والثاني 3- المصفوفة tr = مجموع درجات أعمال الفصلين الأول والثاني المطلوب: كيف أستطيع تقسيم الجدول TBL_Final1 إلى ثلاث استعلامات بحيث يكون لكل فصل دراسي استعلام حتى أستطيع عرض الدرجات في التقرير بطريقة عمودية؛ لأنني قمت بتقسيم الجدول إلى ثلاث استعلامات وجعلت لكل فصل دراسي استعلام ولكن أراها طريقة غير مقبولة ومن الشهل التلاعب بهذه الاستعلامات فهل يوجد طريقة أذكى وأضمن وأفضل من هذه الطريقة علماً بأن طريقة التقرير وتنسيقه موضحة في الصورة المرفقة مع قاعدة البيانات مرفق قاعدة البيانات DataBase.zip
Foksh قام بنشر منذ 1 ساعه قام بنشر منذ 1 ساعه وعليكم السلام ورحمة الله وبركاته .. جرب هذا الاستعلام 😉 :- SELECT S.StudentID, S1.on1 AS S1_on1, S1.on2 AS S1_on2, S1.on3 AS S1_on3, S1.on4 AS S1_on4, S1.on5 AS S1_on5, S1.on6 AS S1_on6, S1.on7 AS S1_on7, S1.on8 AS S1_on8, S1.on9 AS S1_on9, S1.to1 AS S1_to1, S1.to2 AS S1_to2, S1.to3 AS S1_to3, S1.to4 AS S1_to4, S1.to5 AS S1_to5, S1.to6 AS S1_to6, S1.to7 AS S1_to7, S1.to8 AS S1_to8, S1.to9 AS S1_to9, S1.tr1 AS S1_tr1, S1.tr2 AS S1_tr2, S1.tr3 AS S1_tr3, S1.tr4 AS S1_tr4, S1.tr5 AS S1_tr5, S1.tr6 AS S1_tr6, S1.tr7 AS S1_tr7, S1.tr8 AS S1_tr8, S1.tr9 AS S1_tr9, S2.on1 AS S2_on1, S2.on2 AS S2_on2, S2.on3 AS S2_on3, S2.on4 AS S2_on4, S2.on5 AS S2_on5, S2.on6 AS S2_on6, S2.on7 AS S2_on7, S2.on8 AS S2_on8, S2.on9 AS S2_on9, S2.to1 AS S2_to1, S2.to2 AS S2_to2, S2.to3 AS S2_to3, S2.to4 AS S2_to4, S2.to5 AS S2_to5, S2.to6 AS S2_to6, S2.to7 AS S2_to7, S2.to8 AS S2_to8, S2.to9 AS S2_to9, S2.tr1 AS S2_tr1, S2.tr2 AS S2_tr2, S2.tr3 AS S2_tr3, S2.tr4 AS S2_tr4, S2.tr5 AS S2_tr5, S2.tr6 AS S2_tr6, S2.tr7 AS S2_tr7, S2.tr8 AS S2_tr8, S2.tr9 AS S2_tr9, S3.on1 AS S3_on1, S3.on2 AS S3_on2, S3.on3 AS S3_on3, S3.on4 AS S3_on4, S3.on5 AS S3_on5, S3.on6 AS S3_on6, S3.on7 AS S3_on7, S3.on8 AS S3_on8, S3.on9 AS S3_on9, S3.to1 AS S3_to1, S3.to2 AS S3_to2, S3.to3 AS S3_to3, S3.to4 AS S3_to4, S3.to5 AS S3_to5, S3.to6 AS S3_to6, S3.to7 AS S3_to7, S3.to8 AS S3_to8, S3.to9 AS S3_to9, S3.tr1 AS S3_tr1, S3.tr2 AS S3_tr2, S3.tr3 AS S3_tr3, S3.tr4 AS S3_tr4, S3.tr5 AS S3_tr5, S3.tr6 AS S3_tr6, S3.tr7 AS S3_tr7, S3.tr8 AS S3_tr8, S3.tr9 AS S3_tr9, S3.TotalSum, S3.average, S3.Grade, S3.FailCount, S3.Result FROM ((TBL_Students AS S LEFT JOIN TBL_Final1 AS S1 ON S.StudentID = S1.StudentID AND S1.SemesterID = 1) LEFT JOIN TBL_Final1 AS S2 ON S.StudentID = S2.StudentID AND S2.SemesterID = 2) LEFT JOIN TBL_Final1 AS S3 ON S.StudentID = S3.StudentID AND S3.SemesterID = 3; تم استخدام LEFT JOIN بدلاً من INNER JOIN لضمان ظهور الطالب في التقرير حتى لو نقصت بيانات أحد الفصول الدراسية (في هذه الحالة ستظهر درجات ذلك الفصل فارغة بدلاً من اختفاء الطالب تماماً من التقرير) . واخبرنا بالنتيجة
الردود الموصى بها
انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد
يجب ان تكون عضوا لدينا لتتمكن من التعليق
انشئ حساب جديد
سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .
سجل حساب جديدتسجيل دخول
هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.
سجل دخولك الان