فراخوان همكاري؛ يافتن راهي براي محدود كردن ايجاد سطرها در يك جدول Mysql

محدود كردن سطرها در يك جدول مثلا تا 50 عدد.
يك نمونه كاربرد:
مثلاً در آمارگيري سايت آخرين 50 ريفرر باقي بمانند و سطرها از آخر بترتيب با ايجاد سطر جديد حذف شوند.
يا مي شود براي آي پي آخريي بازديد كنندگان چنين طرحي را بكار برد.
آيا راه مستقيمي براي دسترسي به چنين هدفي در Mysql پيش بيني شده است يا بايد به راههاي كد نويسي متوسل شويم؟
 

Salman_MP

Member
اگه من بخام یه همچین کاری که گفتی بکنم با Update میکنم. فکر نمیکنم نیازی به این چیزی که گفتی باشه !
یعنی اگر هم بود یه جور شبیه سازی Update می شد ! نه ؟
 
Salman_MP گفت:
اگه من بخام یه همچین کاری که گفتی بکنم با Update میکنم. فکر نمیکنم نیازی به این چیزی که گفتی باشه !
یعنی اگر هم بود یه جور شبیه سازی Update می شد ! نه ؟

به نظر شما در طراحی پورتالها پیش بینی آپدیت دستی معنا داره؟؟؟
منظور من بیشتر اینه که ما در یک جدول فقط 50 سطر داشته باشیم و از آخر همیشه پاک بشن
 

daemon

New Member
این کارو انجام بده.
به table یک ستون جدید اضافه کن به عنوان زمان مراجعه
هر گاه کاربر جدید وارد شد و خواستی اونو به table اضافه کنی ابتدا چک کن ببین اگر 50 تا پر نشده که هیچی ولی اگر 50 تا پر شده بود یک query بزن تا minimum زمان مراجعه رو بهت بده و اون سطر رو از table حذف کن و سپس سطر جدید رو با خیال راحت insert کن. این طوری همیشه رو 50 ثابت میمونی.
 

Salman_MP

Member
سيسرا گفت:
به نظر شما در طراحی پورتالها پیش بینی آپدیت دستی معنا داره؟؟؟
منظور من بیشتر اینه که ما در یک جدول فقط 50 سطر داشته باشیم و از آخر همیشه پاک بشن

شاید من منظورم رو بد گفتم... من منظورم یه چیزی شبیه به چیزیه که daemon گفت. یعنی هر دفعه که خاستی اینزرت (!!) کنی بر اساس تاریخ سورت میکنی اگه به 50 تا رسیده بود قدیمیتره رو update کنی ! همین . نه که هر روز بیکار که شدی بری update کنی. :)) :))))
 

daemon

New Member
sort کردن لازم نیست
با این دستور میتونی تعداد رو بگیری
کد:
select count(*) from table
با این دستور هم میتونی minimum زمان رو بگیری
کد:
select min(date_column) from table
ُسپس سطر حاوی minimum زمان رو حذف میکنی
کد:
delete from table where date_column=min_date
بعد سطر جدید رو اضافه میکنی
کد:
insert into table values(........)
 

Salman_MP

Member
منم موافقم ولی دوتا کار آخر رو با یه update انجام میدادم اگه من بودم.
 

جدیدترین ارسال ها

بالا