PDA

View Full Version : سوال: گرفتن ماکسیمم بصورت ستونی



pmoshir
یک شنبه 11 اسفند 1387, 22:31 عصر
دوستان عزیز با سلام

چطور میشه در کوئری qrymax ماکسیمم ماهها رو به ریز هر ID گرفت؟

kamiharmonica
دوشنبه 12 اسفند 1387, 13:35 عصر
با سلام
ابتدا در قسمت module تابع نوشته شده را وارد كنيد سپس ابتداي اسم ستونهايي كه بايد در جمع ظاهر شوند را در نام وارد كنيد. در Query ساخته شده از تابع ساخته شده ميتونيد ماكزيمم هر سطر رو بدست بياريد.

pmoshir
سه شنبه 13 اسفند 1387, 00:01 صبح
با تشکر دوست عزیز

این Module رو باهاش کار کردم فقط یک سوال :
در تابع min اگر در ستونها عدد صفر وجود داشته باشه تابع عدد صفر رو نشان خواهد داد.
چطور میشه در این تابع صفر رو از محاسبات حذف کرد؟

dadsara
سه شنبه 13 اسفند 1387, 08:46 صبح
سلام
كافي است در قسمت شرط فيلدي كه MIN روي آن گذاشته ايد 0< را وارد نمائيد

pmoshir
سه شنبه 13 اسفند 1387, 15:35 عصر
دوست عزیز این شرط در این تابع که بصورت ماژول طراحی شده جواب نمیده.
یک نمونه از این ماژول که تابع min دارد رو میزارم.(اسم تابع Fn_MinVal)
فکر میکنم برای این که بتوانیم صفر رو از این تابع حذف کنیم باید ماژول رو تغییر بدیم. ولی من در اون حد نیستم.لطفا کمک کنید.

dadsara
سه شنبه 13 اسفند 1387, 17:27 عصر
سلام
كوئري خود را به اين صورت تغيير دهيد

SELECT Table1.ID, Fn_MaxVal("m","table1","ID",[ID]) AS Expr1
FROM Table1
WHERE (((Fn_MaxVal("m","table1","ID",[ID]))>0));

pmoshir
سه شنبه 13 اسفند 1387, 23:46 عصر
با تشکر دوست عزیز

ولی این کد باز هم رو تابع Fn_MinVal صفر رو در نظر میگیره و نیاز من رو برآورده نمیکنه.
نمونه رو با این تابع تست کنید نه با Fn_MaxVal.
متشکرم از همکاریتون.

e601
چهارشنبه 14 اسفند 1387, 01:33 صبح
سلام

فایل ضمیمه رو نگاه کنید. فانکشن Fn_MinVal یه اصلاح کوچولو نیاز داشت
البته نام کوئری رو به qyrMIN تغییر دادم.

موفق باشید...

pmoshir
چهارشنبه 14 اسفند 1387, 20:24 عصر
جناب مسعودی یک مشکل دیگه که تابع Fn_MinVal داره اینه که اکر در فیلد ماهها اعداد بیش از 5 رقم باشند باز هم صفر جواب میده.اگه میشه یک نگاه بندازین من تمام اعدادم بالای 6 رقم هستند.

e601
چهارشنبه 14 اسفند 1387, 22:50 عصر
مجددا سلام

pmoshir عزیز چون رنج اعدادتون رو نمیدونستم فکر کردم در همون محدوده ای هستن که توی فایل ضمیمتون بود. به همین دلیل از تابع CInt() استفاده کردم.

به هر حال فایل ضمیمه رو دانلود کنید فکر نمیکنم دیگه به مشکل بر بخورید

موفق باشید...

e601
چهارشنبه 14 اسفند 1387, 22:51 عصر
مجددا سلام

pmoshir عزیز چون رنج اعدادتون رو نمیدونستم فکر کردم در همون محدوده ای هستن که توی فایل ضمیمتون بود.

به هر حال فایل ضمیمه رو دانلود کنید فکر نمیکنم دیگه به مشکل بر بخورید

موفق باشید...