محسن
2 سال پیش توسط محسن مطرح شد
1 پاسخ

کوئری های بهینه

در eloquent لاراول به جای join از wherein استقاده میکنه.ایا این یک نقطه قوت حساب میشه یا ضعف؟
موردی که یکی از همکاران به من گفت در رابطه استفاده از چند کویری ساده به جای یک کویری سنگین بود.ایا منطقی هست؟مثلا برای اینکه یک گزارش بگیریم بهتره کویری های ساده ولی جداجدا بزنیم یا اینکه سعی بشه تا جای ممکن از یک کویری دیتا گرفته بشه؟


ثبت پرسش جدید
محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 2 سال پیش مطرح شد
1

سلام دوست عزیز
در رابطه با سوال دومتون نظر من این هست ک قطعا یک کوئری بهتر هست تا چند کوئری به شرطی که حجم داده ی الکی و بی استفاده به این عنوان درخواست نشه و خروجی نهایی برات دیتای بیش از حدی نده
ببین شما با هر بار ارتباط با دیتابیس و قطع اون ارتباط یک زمانی رو هدر میدی هرچقدر هم که کوئری سبک باشه
من خودم در تجربه استفادم در چنین حالاتی واقعا شاهد افزایش سرعت پاسخ دهی بودم وقتی چند کوئری رو به یکی تبدیل میکردم و زمانش واقعا کاهش پیدا میکرد.
ولی گاهی ب دلیل حجم زیاد داده بازگشتی توی join و حالت خاص اون کوئری ممکنه تقسیمش به دو سه درخواست برای استفادش توی رم بهتر باشه .

در رابطه با سوال اول اگر مورد رو نشون میدادید خیلی خوب بود چون دو موضوع متفاوت هستن اما اگر با ترکیب select و where in به join خواسته برسه ب نظرم خود mysql هم اگر نیاز باشه برای اجرای اون کد قطعا تبدیلش میکنه و بهینه تر اجراش میکنه
مادامی که شما یک کوئری صحیح از چیزی که نیاز داری بزنی و join کنی من بعید میدونم ضعفی روی join کسی اعلام کنه
اما قطعا میشه گفت ک تیم لاراول اگر این کارو کرده پس با تحقیق بوده و مزیت و برتری ای وجود داشته وگرنه این کارو نمیکرده.
چیزی خاصی با سرچ دستگیرم نشد روی این موضوع


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

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