ورود

نسخه کامل مشاهده نسخه کامل : طریقه حذف کوئری های تکراری در نتیجه جستجو



H.E.R.O.E.S
11-11-2014, 19:41
من الان دارم روی طراحی وب سایت کار می کنم
الان می خوام پیام های کاربر رو به صورت جدول نشون بدم طوری که وقتی کاربر وقتی جعبه پیام هاش و باز می کنه مثلاً اگر کاربر ایکس 100 تا پیام داده باشه از اون 100 تا یکیش و برام نشون بده که وقتی روی اون نام کاربری طرف کلیک می کنه تمامی پیام های جدید ارسالی اون و بگیره
من تو قسمت دوم مشکلی ندارم فقط می خوام وقتی که از بانک دیتا می گیرم ممکنه دیتا های تکراری چیزی حدود 10000 تا باشه که این زیاد جالب نیست و می خوام فقط یک رکورد از اون تکراری ها برام درج بشه
اسم جدول ها این ها هستن:
table Post:
ID-> link To Profile.ID
user-> link to Profile.username
message=msg
Delete_from=0
From=link to profile.username
Delete_To
Too=link to profile.username
این ها اطلاعات من در بانک هست ممکن هست یک کاربر حدود 20 تا پیام گزاشته باشه که زیاد جالب نیست تو نوار ناتیفکیشن بگه این کاربر 20 تا پیام داره بهتره یکیش و نشون بده روش که کلیک می کنه تمام پیام هاش و براش بیاره
البته تو مورد دومیش مشکلی نیست اولیش و اگه بشه یکم کمکم کنید:n28:

ببخشید که سوالم زیاد طولانی شد:(

vahid_d
13-11-2014, 20:18
سلام
برای من سوالت خیلی مفهوم نبود و متوجه نشدم دقیقا چیکار میخوای بکنی. لطفا واضح و گویا تر توضیح بده که بشه جواب داد

H.E.R.O.E.S
13-11-2014, 23:31
سلام دوست خوب من
دوست خوب من فرض کن من امروز الان 5 تا پیام برای یکی می فرستم و 5 تا دیگه و تو 1 دقیقه بعد ... خلاصه جمع تعداد پیام هایی که من تو یک شبانه روز می فرستم ممکنه به 1000 تا هم بره
می خوام کوئری اجرا کنم که وقتی یک کوئری و برام گرفت دیگه از اون نام کاربری برام خروجی نده و بره سراغ پیام های دیگه افراد
فرض کن من توی بانکم این ها رو ثبت دارم:
user | msg | id
حالا مقادیر داخل جدول ها این ها هستند
ali|salam |1
ali|khoobi?|2
ali|che khabar|3
.
.
.
ali | key on mishi baba|100
reza |umadi bem tak bezan|101
jawad|salam hasti |102
reza|khodafez|103
حالا کوئری می خوام که از 100 تا پیامی که علی فرستاده فقط یکی از اون ها رو برام نشون بده یا مثل رضا که دو تا پیام فرستاده یکی و تو خروجی نشون بده و وقتی روی دکمه نمایش بیشتر کلیک می کنه کل پیام هاش و بیاره

.
.
.

ایا همچین کوئری و داریم؟

vahid_d
17-11-2014, 13:04
سلام
چيزي كه مينويسم كد PL/SQL هست. اگر شما با بانك ديگه اي كار ميكني زحمت تبديل كدش به عهده ي خودتون

كاري كه ميكنيم تو اين كد اينه كه تمام user هايي كه وجود دارن رو ليست ميكنيم و بعد به ازاي هر كدومشون اولين ركورد اونهارو تو يه جدول واسط و موقت كنار هم ميچينيم. در نهايت چيزي كه تو اين جدول واسط وجود داره در واقع چيزيه كه شما دنبالشي



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

با توجه به مثالي كه خودتون زديد تو جدول واسط همچين چيزي خواهيم داشت :
ali|salam|1
reza |umadi bem tak bezan|101
jawad|salam hasti |102