سبد (0)

تبلیغات

صفحه بندی داده ها در mysql

محدود کردن رکوردهای انتخاب شده در پایگاه داده MySQL

Wiki

در پایگاه داده MySQL، با استفاده از قسمت LIMIT می توانید تعداد رکوردهای برگشتی را محدود کنید.

با وجود امکان LIMIT دیگر بسادگی می توانید صفحه بندی یا pagination را روی جداول بزرگ پیاده نمایید. همان طور که می دانید در چنین جدول هایی با تعداد رکوردهای بالا، نمایش تمام رکوردها می تواند کارایی برنامه را بسیار کاهش دهد.

فرض کنید بخواهیم تمام رکوردهای 1 تا 30 از جدول "Orders" را انتخاب کنیم، بنابراین کد زیر را خواهیم داشت:

$sql = "SELECT * FROM Orders LIMIT 30";

زمانی که کوئری بالا اجرا می شود، تنها 30 رکورد اول انتخاب خواهد شد.

اگر بخواهیم رکوردهای 16 تا 25 را انتخاب کنیم، چه باید کرد؟

با استفاده از دستور OFFSET در پایگاه داده MySQL می توانید مشکل بالا را حل کنید ...!

در مثال زیر، تنها 10 رکورد انتخاب می شود (LIMIT 10) اما از رکورد 16 به بعد این انتخاب صورت خواهد گرفت (OFFSET 15):

$sql = "SELECT * FROM Orders LIMIT 10 OFFSET 15";

برای کوتاه تر شدن کد می توانید بصورت زیر عمل کنید:

$sql = "SELECT * FROM Orders LIMIT 15, 10";

توجه فرمایید که زمانی که از کاما (,) استفاده می کنید، گزینه های "تعداد رکوردهای برگشتی" و "نقطه شروع" برعکس خواهد شد.


برای مشاهده فیلم ها و آموزش های پروژه محور برنامه نویسی PHP کلیک کنید.

دیدگاه‌ها  

0 # hamidb 1395-10-18 20:05
ممنون
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
0 # امیرکیان 1395-04-20 22:12
اگر دستور را به صورت زیر بنویسیم
$sql = "SELECT * FROM Orders LIMIT 15

آیا از رکورد 16 تا آخر را برای ما برمیگرداند ؟!
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
0 # مهرداد صلاحی 1395-04-22 20:37
خیر. این دستور 15 رکورد رو برای شما بر می‌گردونه.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
0 # امیرکیان 1395-03-17 12:49
حال چطور میشود که در صفحه ما مثلا دو دکمه بعدی و قبلی داشته باشیم وقتی که کاربر روی دکمه ی بعدی کلیک کرد مقدار شروع ۱۰ واحد افزایش یاید و برای قبلی هم به صورت عکس ۱۰ واحد کم شود

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

با تشکر
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # مهرداد صلاحی 1395-04-22 20:39
شما وقتی دکمه رو کلیک می‌کنید،‌می‌تون ید یک درخواست رو برای سرور ارسال کنید.
این درخواست شما هست که در واقع در PHP پردازش میشه و نتیجه به شما برگشت داده میشه.

با کلیک روی یک صفحه شماره‌ی اون صفحه برای سرور ارسال میشه و توسط کدنویسی تشخیص داده میشه که چه رکوردی تا چه شماره‌ای برگشت داده بشه.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن

آموزش صوتی PHP

بستن
مدرس:
سوال و جواب:

ابزاری که در پیش روی دارید یکی از ابزارهای بسیار کاربردی سایت بیاموز در زمینه آموزش است، این ابزار برای سهولت یادگیری شما کاربران محترم طراحی شده است.

فقط کافی است روی عنوان پاراگراف مورد نظرتان کلیک کنید تا پخش صدا آغاز شود ...!

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه پرداخت آنلاین - بانک اقتصاد نوین پرداخت آنلاین - بانک سامان
 
دوره های آموزشی راه اندازی کسب و کارهای اینترنتی
تبلیغات اینترنتی