কম্পিউটার টিউটোরিয়াল

MySQL-এ ORDER BY ... DESC LIMIT ... OFFSET ব্যবহার করে নির্দিষ্ট রেঞ্জের সারি নির্বাচন করা

নির্দिष्ट রেঞ্জের সারি নির্বাচন করতে ORDER BY, LIMIT এবং OFFSET ব্যবহার করুন। প্রথমে একটি টেবিল তৈরি করি:

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    StudentName VARCHAR(20)
);

৯টি রেকর্ড যোগ করি:

mysql> INSERT INTO DemoTable(StudentName) VALUES('John'), ('Carol'), ('David'), ('Bob'), ('Chris'), ('Robert'), ('Adam'), ('Mike'), ('Sam');

সকল রেকর্ড দেখতে:

mysql> SELECT * FROM DemoTable;

আউটপুট:

+----+-------------+
| Id | StudentName |
+----+-------------+
| 1  | John        |
| 2  | Carol       |
| 3  | David       |
| 4  | Bob         |
| 5  | Chris       |
| 6  | Robert      |
| 7  | Adam        |
| 8  | Mike        |
| 9  | Sam         |
+----+-------------+

Id ডিসেন্ডিং ক্রমে সাজিয়ে, ২টি সারি বাদ দিয়ে (OFFSET 2), পরের ৪টি সারি (LIMIT 4) নেওয়া:

mysql> SELECT * FROM DemoTable ORDER BY Id DESC LIMIT 4 OFFSET 2;

আউটপুট:

+----+-------------+
| Id | StudentName |
+----+-------------+
| 7  | Adam        |
| 6  | Robert      |
| 5  | Chris       |
| 4  | Bob         |
+----+-------------+

ব্যাখ্যা:

  • ORDER BY Id DESC: Id বড় থেকে ছোট ক্রমে সাজানো (৯, ৮, ৭, ৬, ৫, ৪, ৩, ২, ১)।
  • OFFSET 2: প্রথম ২টি সারি (৯, ৮) বাদ দেওয়া।
  • LIMIT 4: পরের ৪টি সারি (৭, ৬, ৫, ৪) নেওয়া।

সিনট্যাক্স вариант: LIMIT 2, 4 (OFFSET 2, LIMIT 4) — পুরনো সিনট্যাক্স, এখনও সমর্থিত।

পেইজিনেশন ফর্মুলা: পেজ নম্বর p (১-ভিত্তিক), পেজ সাইজ s হলে: LIMIT s OFFSET (p-1)*s।

  1. MySQL-এ শেষ ১০টি সারি কীভাবে বের করবেন?

  2. MySQL-এ MATCH এবং AGAINST ব্যবহার করে নির্দিষ্ট কলামে স্ট্রিং খুঁজে বের করা

  3. MySQL-এ নির্দিষ্ট সারি মাত্র ডিলিট করার পদ্ধতি (NOT IN ব্যবহার)

  4. MySQL-এ CONCAT_WS ব্যবহার করে শর্তসাপেক্ষ রো সিলেক্ট করা