PDA

View Full Version : به دست آوردن زمانی که برای به یک query صرف میشه



alismith
جمعه 02 اردیبهشت 1390, 11:22 صبح
سلام
من می خواستم بدونم چطوری میشه مثلا محاسبه کرد برای گرفتن یه query (جستجو یا انتخاب چند تا رکورد) چه مدت طول می کشه
دقیق تر اینکه می خوام هر وقت یه query اجرا شد به جز جوابی که بر می گردونه مدت زمانی که برای همین جواب طول کشید هم بدست بیارم
کسی می تونه کمک کنه؟



با تشکر

shahriyar3
جمعه 02 اردیبهشت 1390, 20:31 عصر
توي برنامه phpmyadmin توي tab sql
كوئري رو مينويسي مدت زمان اجرا رو بهت ميده ولي اين زمان دقيق نيست چونكه تايم دقيق بر اساس سرعت و حجم اينترنت و مشخصات و حافظه قابل دسترسي سرور و كلاينت در هر لحظه ميتونه متغير باشه .
ولي كلا ميتوني يه زمان تقريبي داشته باشي

UnnamE
جمعه 02 اردیبهشت 1390, 20:51 عصر
يه كلاس بود واسه اينكار كه فقط function رو بش ميدادي خودش حساب ميكرد
يادم ني
ولي يه راخ ساده هست
قبل از function توي متغير time رو ست ميكني و بعد از اجرا هم اختلاف اش رو با زمان حال

shahriyar3
جمعه 02 اردیبهشت 1390, 23:49 عصر
UnnamE (http://barnamenevis.org/member.php?75439-UnnamE) گرامي
زمان لازم براي انجام كوئري ساده در حد صدم يا شايد هزارم ثانيه است با گرفتن 2 زمان و كم كردن آن دو از هم اختلاف زمان مقدار قابل توجهي بالا ميره !! به نظر اصلا روش كارآمدي نميآيد.

UnnamE
شنبه 03 اردیبهشت 1390, 07:33 صبح
UnnamE (http://barnamenevis.org/member.php?75439-UnnamE) گرامي
زمان لازم براي انجام كوئري ساده در حد صدم يا شايد هزارم ثانيه است با گرفتن 2 زمان و كم كردن آن دو از هم اختلاف زمان مقدار قابل توجهي بالا ميره !! به نظر اصلا روش كارآمدي نميآيد.

لازم نبود ديگه bold كني كه :D
خب ميتونه هزارم يا همون time مورد نظر رو كه ميخواد نسبت بهش اخلاف بگيره رو ست كنه
البته بهتره كلاس اش رو پيدا كنه

eshpilen
شنبه 03 اردیبهشت 1390, 09:13 صبح
احتمالا MySQL خودش امکاناتی برای اینطور کارها داشته باشه. دقیقا یادم نیست ولی انگار توی منوالش چیزایی بود.
تابع benchmark مای اس کیو ال رو هم نگاه کن شاید بدردت بخوره.
معمولا برای عملیاتی که زمان خیلی کمی میبره اون رو مثلا چند هزاربار تکرار میکنن و مجموع زمان رو بدست میارن و تقسیم بر تعداد تکرار میکنن. اینطوری خطا و تاثیر عوامل تصادفی خیلی کمتر میشه بنظرم.

afee1990
پنج شنبه 08 اردیبهشت 1390, 14:05 عصر
اینجا می تونی جوابتو بگیری :
http://stackoverflow.com/questions/595762/calculate-execution-time-of-a-sql-query