PDA

View Full Version : سوال: چطور می شه کاربرانی که بیشرین پرداخت از نظر تعداد و مبلغ داشتن رو بدست آورد؟



i-php-i
سه شنبه 04 شهریور 1393, 18:49 عصر
می خوام توی دو قسمت جداگانه از وب سایت 50 تا از کاربرانی که بیشترین تعداد پرداخت و بیشترین مبلغ پرداختی داشتن رو نمایش بدم. کوئری مورد نیاز برای این کار چیه؟

rezaonline.net
چهارشنبه 05 شهریور 1393, 10:17 صبح
ساختار جدول یوزر ها و تراکنشهای پرداختی رو بذار

i-php-i
چهارشنبه 05 شهریور 1393, 12:41 عصر
نیازی به چک کردن جدول کاربرها نیست، آی دی کاربرها توی جدل تراکنش ها ذخیره می شه



CREATE TABLE IF NOT EXISTS `user_pay` (
`PRIMARY` int(10) unsigned NOT NULL AUTO_INCREMENT,
`userid` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`price` int(10) NOT NULL,
PRIMARY KEY (`PRIMARY`),
KEY `userid` (`userid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

rezaonline.net
چهارشنبه 05 شهریور 1393, 18:07 عصر
select userid , count(price) _count , sum(price) _sum from user_pay group by userid order by _sum desc limit 50

از نظر جمع مبالغ بیشترین رو نشون میده .

تعداد رو هم نشون میده اما خب براساس جمع مبالغ سورت میکنه .
:)

i-php-i
چهارشنبه 05 شهریور 1393, 18:57 عصر
بنظرتون اگر تعداد فیلهای یه جدول 30 تا باشن و 15 تاش ایندکس باشه جدول درست طراحی شده یا نه؟

روش بالا بهتره یا اینکه این جدول رو به دو جدول تقسیم کنیم و فیلدهایی که روشون سرچ انجام نمی شه رو به جدول دوم انتقال بدیم بهتر نیست؟