السلام عليكم ورحمة الله وبركاته
كيف أستطيع أن أحصل على جميع البيانات الموجودة في ثلاثة جداول أو أكثر بواسطة إستعلام بحيث لا تتكر المعلومات علما بأن جميع هذه الجداول لا توجد بينهم روابط كما هو موضح بالملف المرفق
ولكم مني جزيل الشكر والتقدير
اخي الفاضل
السلام عليكم ورحمة الله وبركاته
طبعا من الخطأ ان تقوم بتصميم مثل هذه القاعدة لأنها تعتبر قاعدة غير طبيعية نظرا لتكرر نفس الحقول في كل الجداول وهذا سوف يسبب لك مستقبلا تضخم في قاعدة البيانات وكان المفروض ان تقوم بعمل جدولين الاول للشعبة والاخر لبيانات الطالب وتقوم بالربط بينهم بعلاقة واحد الى متعدد فعدد الشعب لديك قليل وهو 3 شعب فقط بحيث تختار الشعبة المطلوبة ومن ثم تضع قيم الطالب تحتها في الجدول المرتبط .
ولكن لا يوجد مشكله اليك حل بواسطة استعلام توحيد يجمع الجداول الثلاثة في استعلام واحد بهذه الطريقة :
هذا الاستعلام بدون تكرار البيانات لاحظ كلمة UNION في هذا الاستعلام
SELECT الأول.تسلسل, الأول.الإسم, الأول.الرقم, الأول.الصف, الأول.الشعبة, الأول.الإختبار_الأول, الأول.الإختبار_الثاني FROM الأول; UNION SELECT الثاني.تسلسل, الثاني.الإسم, الثاني.الرقم, الثاني.الصف, الثاني.الشعبة, الثاني.الإختبار_الأول, الثاني.الإختبار_الثاني FROM الثاني; UNION SELECT الثالث.تسلسل, الثالث.الإسم, الثالث.الرقم, الثالث.الصف, الثالث.الشعبة, الثالث.الإختبار_الأول, الثالث.الإختبار_الثاني FROM الثالث;
اما هذا الاستعلام فهو يظهر البيانات مع التكرار لاحظ كلمة UNION ALL في هذا الاستعلام
SELECT الأول.تسلسل, الأول.الإسم, الأول.الرقم, الأول.الصف, الأول.الشعبة, الأول.الإختبار_الأول, الأول.الإختبار_الثاني FROM الأول; UNION ALL SELECT الثاني.تسلسل, الثاني.الإسم, الثاني.الرقم, الثاني.الصف, الثاني.الشعبة, الثاني.الإختبار_الأول, الثاني.الإختبار_الثاني FROM الثاني; UNION ALL SELECT الثالث.تسلسل, الثالث.الإسم, الثالث.الرقم, الثالث.الصف, الثالث.الشعبة, الثالث.الإختبار_الأول, الثالث.الإختبار_الثاني FROM الثالث;
وهذا مثالك بعد التعديل
أخي الكريم captin ولو أني معترض على وجود 3 جداول ببيانات واحدة حيث أن هذا خطأ فادح في عالم قواعد البيانات الا أنه تلبية لرغبتك تم جمع بيانات الجداول الثلاثة في جدول واحد اسمه ins ستجد جميع البيانات ومهما ضغطت الامر فإن البيانات لاتتكرر فقط يجمع لك بيانات الجداول الثلاثة - مع العلم اني قمت بحذف الفهارس فلا داعي لها مادام أنه لا علاقات هنا .. أرجو دعواتك أخوك EKSEER
----------------
أختي زهرة عذرا للرد ولكن لم أشاهد ردك الا الأن بعد إعداد مثالي وكما يقال لاعطر بعد عروس إلا أنني رأيت من الفائدة إرفاق الحل بطريقة أخرى وأنتي والكل يشهد استاذة قديرة لنا جميعا وعموما مثالي يختلف إختلافا طفيفا عن مثالك تحياتي لك
تم تعديل هذه المشاركة بواسطة ekseer في 19 يناير 2007 في 15:58
السلام عليكم ورحمة الله وبركاته
الأخت العزيزة زهرة
الأخ العزيز ekseer
أشكركم جزيل الشكر على سرعة الرد وعلى التوجيهات القيمة
بالنسبة للخطأ الذي أشرتما إليه مشكورين فإنني أعلم أن هناك خطأ في المثال المرفق بسؤالي هذا ، ولكنني تعمدت هذا وذلك لتطبيقة على مشروع أقوم بعمله ويتطلب جمع أكثر من عشرة جداول وجميعها ليس بينها أي رابط ولكن مسميات الحقول فيها تكاد تكون متشابهة وذلك لغايات تسهيل البحث والإحصاء بجميع تلك الجداول دفعة واحدة
مرة أخرى أشكركم على هذا المجهود وجزاكم الله ألف خير وجعله في موازين حسناتكم
السلام عليكم ورحمة الله وبركاته
الأخوة الأعزاء هناك إستفسار آخر وأرجو أن لا أكون قد أثقلت عليكم بأسئلتي
في مثال الأخ ekseer تم تجميع جميع الجداول في جدول واحد وفي كل مرة نقوم بضغط الزر يتم مسح البيانات من الجدول وإعادة كتابتها مرة أخرى ( أقصد بالجدول هو الجدول الذي يتم تجميع البيانات فيه ) ، والسؤال هو هل يمكن أن نجعل البرنامج يقوم بتحديث البيانات أي أن يقوم بالبحث عن السجلات الجديدة في أي من الجداول ويضيفها إلى جدول التجميع مع ترك البيانات القديمة الموجودة في جدول التجميع كما هي ؟
وهل يمكن أن نطبق ما سبق على مثال الأخت زهرة ؟
مع الشكر والتقدير
هذا الموضوع مغلق.