تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] سؤال عن ترتيب البيانات عند الاستعلام
#1
السلام عليكم


اريد جملة الاستعلام لعمل ترتيب  لجدول من خلال عمودين  داخل الجدول  حيث هناك عمود قيم نصية لتقيم الطلاب وعمود اخر تاريخ

اريد ان يتم ترتيب الصفوف للاستعلام بناء علي قيمة بالعمود النصي اولا ان تكون ممتاز او جيد جدا   وفي حالة الانتهاء من القيم بالعمود الاول السابقة يبدا الترتيب بالتاريخ تصاعديا من العمود الثاني بعد ذالك لباقي الصفوف المتبقية .

مثلا الجدول STUDENT

DATE                VALUE              NAME  

 محمد              مقبول                       22/6/2019
 علي               ممتاز                       25/6/2019
 سمير              جيد جدا                  24/6/2019
سعد                 مقبول                       26/6/2019


بعد الترتيب
DATE                VALUE              NAME 

علي               ممتاز                         25/6/2019
سمير              جيد جدا                       24/6/2019
محمد              مقبول                             22/6/2019
سعد                 مقبول                           26/6/2019
الرد
تم الشكر بواسطة:
#2
لا بد من موجود حقل للدرجات وبناء عليه اعمل الترتيب ، في مثالك السابق سوف يرتب الكلمات التي تبدأ بحرف الــ ج قبل الكلمات التي تبدأ بحرف الميم ، ولو عملت ترتيب عكسي ستكون كلمة ممتاز في الاول تليها كلمة مقبول

فالافضل وظع حقل للدرجات وبناء عليه يكون الترتيب
الرد
تم الشكر بواسطة: elgokr , ابراهيم ايبو , dell , dell , محمد اسماعيل
#3
(18-06-19, 06:23 AM)سامي محمد كتب : لا بد من موجود حقل للدرجات وبناء عليه اعمل الترتيب ، في مثالك السابق سوف يرتب الكلمات التي تبدأ بحرف الــ ج قبل الكلمات التي تبدأ بحرف الميم ، ولو عملت ترتيب عكسي ستكون كلمة ممتاز في الاول تليها كلمة مقبول

فالافضل وظع حقل للدرجات وبناء عليه يكون الترتيب

الموضوع مش سهل كدة والا كنت رتبتة بسهولة

انا حطيت مثال بسيط للمطلوب طيب لزيادة الايضاح

انا مطلوب مني برنامج للطلاب حيث الاعلي مستوي  ثانيا الاسبق حجزا يكون في المقدمة 

يعني لو رتبنا المستوي والتقدير هنختار الاعلي ولو تشابة الطلبة بعد ذالك يبقي ناخذ الاول حجزا

لان في حالة التقدير الغير مطلوب هيظهر طلبة ليهم تاريخ قديم التسجيل وتاريخ حديث التسجيل  غير ممكن نختار حديث التسجيل علي الاقدم .
الرد
تم الشكر بواسطة: dell
#4
طريقة الترتيب = اوردير باي اسم الحقل ثم تصاعدي أو تنازلي ثم فاصلة وبعدين اسم الحقل وتصاعدي او تنازلي وهكذا :



كود :
order by score ask , date desk
لا يحزنك أنّك فشلت ما دمت تحاول الوقوف على قدميك من جديد.
الرد
تم الشكر بواسطة: ابراهيم ايبو , dell , dell , محمد اسماعيل
#5
وعليكم السلام ورحمة الله وبركاته

بما انك تريد ترتيب عمود الـ VALUE
فهنا يجب ان تكون على دراية مهمة جداً والذى يقع بها الجميع

الاعمدة التى لها وصف ما من اى نوع
لا يجب ان تكون على شكل نص بجدول التفاصيل
من الصح وضع جدول مخصص للوقف ومن ثم فى جدول التفاصيل يتم وضع كود الوصف بدلاً من النص

كمثال لدى جدول لاسماء المنتجات
فطبيعي سيكون رقم تسلسلى - كود المنتج - اسم المنتج
وفى شاشة المبيعات او المشتريات كمثال
سيكون رقم تسلسلى - كود المنتج - الكمية ... الخ

فلاحظ فى الجدول الثاني لم اضح اسم المنتج بال تم وضع كود المنتج
نفس الامر هنا تماماً فى حالتك هذه

وطبعاً عند العرض فى الفوم ستقوم بتحويل كود / رقم الى الاسم
اما من خلال كود الاستعلام تعمل دمج الجدولين معاً وهذه هى الطريقة الصحيحة
او بعد الانتهاء من الاستعلام الاول 

عند عرض الرقم تقوم بعمل استعلام ثاني ووضع الرقم فى 
كود :
select name from tb where CODE_VALUE = 1

وبكده يكون تم جلب اسم الصفة بدلاً من عرض الرقم

تحياتى لك

وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
#6
السلام عليكم اخي الكريم محمد
من باب زياد الخير وتنوع الافكار والاراء
هناك طريقة بأن تقوم وضع القيم (ممتاز - جيد جدا - جيد - مقبول )يحبث تضع لها حرف في البداية على الشكل التالي
(A_Exelant , B_VeryGood , C_Good ,D_Natural)  او بالعربي  وضع احرف هجائية
 وبهذا الشكل يمكن ترتيب الحقل تصاعديا
واليك المثال
ملاحظة مربع AutuSearsh في المثال غير مفعل فقط اضغط على الزر استعلام


الملفات المرفقة
.rar   NewStatmentWithCOnTxtToNum.rar (الحجم : 82.03 ك ب / التحميلات : 12)
الرد
تم الشكر بواسطة: elgokr , dell , محمد اسماعيل
#7
(18-06-19, 09:20 AM)حريف برمجة كتب : طريقة الترتيب = اوردير باي اسم الحقل ثم تصاعدي أو تنازلي ثم فاصلة وبعدين اسم الحقل وتصاعدي او تنازلي وهكذا :



كود :
order by score ask , date desk

(18-06-19, 12:26 PM)elgokr كتب :
وعليكم السلام ورحمة الله وبركاته

بما انك تريد ترتيب عمود الـ VALUE
فهنا يجب ان تكون على دراية مهمة جداً والذى يقع بها الجميع

الاعمدة التى لها وصف ما من اى نوع
لا يجب ان تكون على شكل نص بجدول التفاصيل
من الصح وضع جدول مخصص للوقف ومن ثم فى جدول التفاصيل يتم وضع كود الوصف بدلاً من النص

كمثال لدى جدول لاسماء المنتجات
فطبيعي سيكون رقم تسلسلى - كود المنتج - اسم المنتج
وفى شاشة المبيعات او المشتريات كمثال
سيكون رقم تسلسلى - كود المنتج - الكمية ... الخ

فلاحظ فى الجدول الثاني لم اضح اسم المنتج بال تم وضع كود المنتج
نفس الامر هنا تماماً فى حالتك هذه

وطبعاً عند العرض فى الفوم ستقوم بتحويل كود / رقم الى الاسم
اما من خلال كود الاستعلام تعمل دمج الجدولين معاً وهذه هى الطريقة الصحيحة
او بعد الانتهاء من الاستعلام الاول 

عند عرض الرقم تقوم بعمل استعلام ثاني ووضع الرقم فى 
كود :
select name from tb where CODE_VALUE = 1

وبكده يكون تم جلب اسم الصفة بدلاً من عرض الرقم

تحياتى لك

وتمنياتى لك التوفيق

(18-06-19, 02:02 PM)ابراهيم ايبو كتب :
السلام عليكم اخي الكريم محمد
من باب زياد الخير وتنوع الافكار والاراء
هناك طريقة بأن تقوم وضع القيم (ممتاز - جيد جدا - جيد - مقبول )يحبث تضع لها حرف في البداية على الشكل التالي
(A_Exelant , B_VeryGood , C_Good ,D_Natural)  او بالعربي  وضع احرف هجائية
 وبهذا الشكل يمكن ترتيب الحقل تصاعديا
واليك المثال
ملاحظة مربع AutuSearsh في المثال غير مفعل فقط اضغط على الزر استعلام

جزاكم الله عني وعن غيري كل خير

تم الحل
الرد
تم الشكر بواسطة: elgokr



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم