رتبه

این تاپیک 3 پاسخ و 2 مشارکت کننده دارد . آخرین آپدیت توسط :  aligh ،‏ 2 سال و 4 ماه پیش .

این تاپیک تاکنون 642 بازدید داشته است .

نویسنده پست
سه شنبه ، 22 جولای 2014     11:07 ق.ظ #


aligh

Subscriber
136 پست33 تاپیک

سلام دوستان . من یه سایتی دارم که در دیتابیسش یه جدول داره که مشخصات کاربران و امتیاز آنها توش ذخیره شده . میخواستم بدونم چجوری می تونم در یک جدول دیگه اون رو به صورت رتبه ذخیره کنم . یعنی کسی که بیشترین امتیاز رو داره در رتبه ی اول و ... . البته نمیخوام به صورت دستی و با order by  ذخیره کنم . میخوام وقتی کاربر ثبت نام کرد یه صورت خودکار در جدول من ، آخرین رتبه رو داشته باشه(چون وقتی ثبت نام میکنه ، امتیازش 0 هست) . البته اگر هم کاربری با امتیاز 0 وجود داشت به صورت مشترک یه رتبه رو داشته باشن .

البته اینو هم بگم من از سیستم مدیریت محتوا استفاده نمی کنم .

ممنون

0  تشکر
سه شنبه ، 22 جولای 2014     11:40 ق.ظ #


حامد مودی

Subscriber
VIP
147 پست40 تاپیک

دوست عزیز اگه نظر منو بخوای من ترجیح میدم جدول جدید ایجاد نکنم و با یه کوئری اطلاعاتمو بگیرم. با یه دستور  INNER JOIN میشه کارو درست کرد چرا جدول جدید؟

اگه هم بخوای به این صورت جدول جدید ثبت کنی همیشه باید رتبه هر فرد رو بروز کنی ولی با کوئری براساس رتبه اطلاعات رو نشون میدی.

وقتی کاربر ثبت نام کنه یه رکورد تو جدول امتیازاتت براش با مقدار امتیاز صفر اضافه کن. وقتی امتیاز گرفت رکورد جدول امتیازات رو بروز کن وقتی خواستی اطلاعات رو نشون بدی و بر اساس رتبه کاربراتو نشون بدی از INNER JOIN استفاده کن و با ORDER BY بر اساس مجموع امتیاز مرتتبشون کن و اطلاعات رو بفرست به خروجی

تو درس طراحی بانک اطلاعاتی به این نوع داده ها موجودیت ضعیف میگن.

امیدوارم منظورت رو درست متوجه شده باشم!!!!

البته من همینو میدونم. دوستان دیگر سون لرن بهتر میتونن کمک کنن. منم استفاده میکنم.

0  تشکر
سه شنبه ، 22 جولای 2014     5:22 ب.ظ #


aligh

Subscriber
136 پست33 تاپیک

خیلی ممنون آقا حامد . من با INSERT JOIN زیاد آشنا نیستم . اگر مشکلم حل شد که هیچی ، اگر نشد همینجا مطرح می کنم .

0  تشکر
سه شنبه ، 22 جولای 2014     5:24 ب.ظ #


aligh

Subscriber
136 پست33 تاپیک

ببخشید INNER JOIN

0  تشکر
پست 1 تا 4 (از مجموع 4 پست)

برای پاسخ دادن به این تاپیک باید وارد سایت شوید .