محمد رضا
3 سال پیش توسط محمد رضا مطرح شد
2 پاسخ

صحیح کار نکردن orderBy لاراول در اعداد منفی و مثبت

سلام و درود خدمت همه ی راکتی های عزیز
بنده دو سه تا جدول دارم که با هم join میشن و فیلدی رو برای هر شخص از یک از این جداول sum قرار میدم
خروجی کد هیچ مشکلی نداره و کاملا صحیح هست اعداد
مشکل جایی هست که برای فیلتر کردن صعودی نزولی از دستور orderBy بر روی این ستون محاسبه شده استفاده میکنم
و برای اعداد مثبت و صفر صحیح مرتب میشه اما اعداد منفی این بین یه جای نا مناسب هستن و انگار تشخیص نمیده عدد منفی رو

بخش اطلاعات واکشی شده

->select(DB::raw('tbl1.*,tbl2.address,sum(tbl3.amount) as user_balance'))

بخش sort

$users=$users->orderBy('user_balance','asc');

برای sum از groupBy هم استفاده شده که برای هر کدوم sum بخوره
میگم خروجی نمایش داده شده و اطلاعات خروجی کاملا صحیح هستن فقط sort اعداد منفی رو درست نمیزاره سر جاشون
اعداد صفر و مثبت اوکی هستن.
دلیل چی میتونه باشه ب نظرتون دوستان؟


ثبت پرسش جدید
AriaieBOY
تخصص : TALL Stack Lover
@ariaieboy 3 سال پیش آپدیت شد
0

sum محاسبه کنید و از تابع sortby برای مرتب سازی استفاده کنید و نتیجه را بررسی کنید.


محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش آپدیت شد
0

@ariaieboy
sort باید برا کالکشن باشه اشتباه نکنم بعد از get کردنه من paginate دارم رکورد هام دو هزار تایی میشه
نمیشه get کنم یهو بعد sort کنم
چند مدلی تست کزدم خطا میخوردم


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام