PDA

View Full Version : سوال: نحوه قرار دادن نمره برای دانش اموز در SQL



Tarragon
چهارشنبه 10 آبان 1391, 04:35 صبح
سلام .
من دارم بعنوان یه نمونه کار برای یه شرکت یه سیستم مدارس طراحی می کنم .
من الان تو قسمت قرار دادن نمره برای این دانش آموز به مشکل خوردم.:افسرده:
من می خوام تو صفحه نمرات برای دانش آموز عنوان نمرات ثبت شده باشه و با کلیک کردن روی اون نمرات اون دانش آموز توی اون ماه رو بنویسه که من تو قسمت پایگاه داده به مشکل خوردم یعنی نمی دونم چجوری باید این قسمت رو طراحی کرد .
لطفا برام قسمت SQL رو توضیح بدید.:قلب:
پیشاپیش عیدتون مبارک.:بوس:

colors
چهارشنبه 10 آبان 1391, 11:56 صبح
سلام

یک بهتر توضیح بده!!

Tarragon
چهارشنبه 10 آبان 1391, 17:04 عصر
خلاصه بگم
واسه دادن نمره به هر دانش آموز SQL چجوری باید باشه؟
مثلا بخوام واسه هر دانش آموز یه عنوان قرار بگیره مثلا مرداد وقتی میره توش تمام نمرات مرداد ماه که توسط مدیریت واسش گذاشته شده رو نشون بده اما نمی دونم SQL رو چطوری باید بزارم
ممنون می شم اگر در مورد SQLش راهنمایی کنید

black_binary
چهارشنبه 10 آبان 1391, 18:27 عصر
سلام
اگه منظورت اینه که میخوای بانک اطلاعاتی ت قواعد نرمال سازی توش رعایت شده باشه و البته join ش پیچیده هم نشه
به نظر من می تونی اینگونه طراحی کنی که:
یک جدول نمرات داشته باشی که توش: آی دی دانش آموز + آی دی دروس + ماه و سال از نوع int داشته باشی + نمره
سپس جستجوت اینگونه خواهد شد
select nomre,id_Dars
From t_School
Where id_student = @id_Student AND mm==@mm AND yy==@yy
البته برای به دست آوردن اسم درس هم که بایست join کنی با جدولش و.....

Tarragon
چهارشنبه 10 آبان 1391, 19:08 عصر
داداش اما گروه بندی چی؟
مثلا می خوام نمرات شهریور توی یه جدول باشه چی؟

black_binary
چهارشنبه 10 آبان 1391, 19:45 عصر
اینطوری که تعداد جدولات زیاد میشه
ما باید کاری کنیم جداولمون کمتر بشه
با روش من group نمیشه
برای داشتن نمرات شهریور میشه با دیدگاه جدول موقت به هدفمون برسیم یا راحتر اینکه با یک کوئری where mm==6 نتیجه ای را بدست آورده سپس این نتجه را با کوئری دیگر، جهت استخراج اطلاعاتمان استفاده کنیم.
بعبارت دیگر با3تا Select تو در تو به هدف group میرسیم (یا مشابه آن)
خوب به هرحال این روش ایده آلی نیست ولی جوابگو هست.
یاحق

Tarragon
چهارشنبه 10 آبان 1391, 19:51 عصر
داداش خوب یه قسمت تو Sql به نام point_cat می زارم داراش مشخصات Id , name , user_id که بعد تو قسمت نمرات یه قسمت به نام cat اضافه می کنم بعد اونو مساوی id این می زارم بعد هر دفعه واسه select از where استفاده می کنم