كوئري گرفتن با كمك order by
سلام
من از جدولم كوئري ميگيرم به اين شكل
SELECT * FROM `table1` where `api` = '1' ORDER BY `date` AND `prc` DESC
خروجي فقط بر حسب پارامتر دوم مرتب سازي ميكنه و برميگردونه.
نوع فيلد تاريخ هم از نوع int هست و مقاديرش هم به صورت 1313754016 هست
ميخوام جوابي كه بر ميگردونه اول فيلد prc رو به ترتيب از 1-9 مرتب كنه بعدش هر كدوم كه تاريخش جديد تره بياره بالاتر ولي نميشه
نقل قول: كوئري گرفتن با كمك order by
AND نمیخواد :
SELECT * FROM table1 where api = 1 ORDER BY prc ASC,date DESC
برای فیلد date هم یک اسم دیگه انتخاب کنید !
نقل قول: كوئري گرفتن با كمك order by
نقل قول:
نوشته شده توسط
Unique
AND نمیخواد :
SELECT * FROM table1 where api = 1 ORDER BY prc ASC,date DESC
برای فیلد date هم یک اسم دیگه انتخاب کنید !
عمل نميكنه
فقط مرتب سازي رو بر اساس فيلد اول نشون ميده !!!:ناراحت:
نقل قول: كوئري گرفتن با كمك order by
نقل قول: كوئري گرفتن با كمك order by
نقل قول:
فقط مرتب سازي رو بر اساس فيلد اول نشون ميده
اگه اسم فیلد شما توی پایگاه واقعا date هستش ! مشکل باید از همین باشه لطفا از اسامی با معنا برای mysql استفاده نکنید ! اسمش را بگذار t_date یا myDate یا هرچی که برای mysql بی معنا باشه ! کد بالا باید ابتدا رکورد ها را از شماره 1 تا 9 (به قول شما) به صورتی صعودی مرتب و سپس بر اساس فیلد date (که به قول شما Int هم هست) را به صورت نزولی مرتب کنه !
حالا اگه شما با تغییر اسم فیلد به یک اسم مناسب باز هم جواب نمیگیرید نیاز هست قسمتی از جدول mysql و کدتون را بگذارید ! تا بتونم بگم مشکل از چیه !