কম্পিউটার

মাইএসকিউএল লিমিট, অফসেট ব্যবহার করে পৃষ্ঠা সংখ্যা?


প্রথমত, আমাদের কিছু রেকর্ড সহ একটি টেবিল তৈরি করতে হবে, তারপরে আমরা লিমিট এবং অফসেটের সাহায্যে পেজিনেশন ব্যবহার করব।

CREATE কমান্ডের সাহায্যে একটি টেবিল তৈরি করা। প্রশ্নটি নিম্নরূপ -

mysql> CREATE table limitoffsetDemo
-> (
-> id int,
-> FisrtName varchar(200)
-> );
Query OK, 0 rows affected (0.45 sec)

একটি টেবিল তৈরি করার পর, আমরা INSERT কমান্ডের সাহায্যে রেকর্ড সন্নিবেশ করব।

রেকর্ড সন্নিবেশ করা হচ্ছে

mysql> INSERT into limitoffsetDemo values(1,'John');
Query OK, 1 row affected (0.11 sec)

mysql> INSERT into limitoffsetDemo values(2,'Bob');
Query OK, 1 row affected (0.16 sec)

mysql> INSERT into limitoffsetDemo values(3,'David');
Query OK, 1 row affected (0.13 sec)

mysql> INSERT into limitoffsetDemo values(4,'carol');
Query OK, 1 row affected (0.19 sec)

mysql> INSERT into limitoffsetDemo values(5,'Taylor');
Query OK, 1 row affected (0.10 sec)

mysql> INSERT into limitoffsetDemo values(1,'John');
Query OK, 1 row affected (0.24 sec)

mysql> INSERT into limitoffsetDemo values(7,'Smith');
Query OK, 1 row affected (0.13 sec)

mysql> INSERT into limitoffsetDemo values(8,'John');
Query OK, 1 row affected (0.12 sec)

mysql> INSERT into limitoffsetDemo values(9,'Johnson');
Query OK, 1 row affected (0.11 sec)

mysql> INSERT into limitoffsetDemo values(10,'Jason');
Query OK, 1 row affected (0.08 sec)

mysql> INSERT into limitoffsetDemo values(11,'Bk');
Query OK, 1 row affected (0.17 sec)

রেকর্ড সন্নিবেশ করার পরে, আমরা SELECT কমান্ডের সাহায্যে আমার টেবিলে কতগুলি রেকর্ড রয়েছে তা পরীক্ষা করতে পারি। প্রশ্নটি নিম্নরূপ -

লিমিটঅফসেট ডেমো থেকে
mysql> SELECT * from limitoffsetDemo;

উপরের ক্যোয়ারীটি কার্যকর করার পরে, আমরা নিম্নলিখিত আউটপুট পাব

+------+-----------+
| id   | FisrtName |
+------+-----------+
| 1    | John      |
| 2    | Bob       |
| 3    | David     |
| 4    | carol     |
| 5    | Taylor    |
| 1    | John      |
| 7    | Smith     |
| 8    | John      |
| 9    | Johnson   |
| 10   | Jason     |
| 11   | Bk        |
+------+-----------+
11 rows in set (0.00 sec)

এখন, আমার কাছে 11টি রেকর্ড রয়েছে। লিমিট এবং অফসেটের সাহায্যে পেজিনেশন সেট করতে, নিম্নলিখিত সিনট্যাক্স প্রয়োগ করুন -

SELECT * from yourTableName limit value1,value2;
থেকে * নির্বাচন করুন

উপরের ক্যোয়ারীতে, মান1 বলে যে আমাদের কোথায় রেকর্ড প্রদর্শন করতে হবে এবং মান2 রেকর্ডের সংখ্যা।

এখন, আমি ফলাফল পেতে উপরের প্রশ্নটি প্রয়োগ করছি, যা নিম্নরূপ −

mysql> SELECT * from limitoffsetDemo limit 7,4;

নিম্নলিখিত আউটপুট

+------+-----------+
| id   | FirstName |
+------+-----------+
| 8    | John      |
| 9    | Johnson   |
| 10   | Jason     |
| 11   | Bk        |
+------+-----------+
4 rows in set (0.00 sec)

  1. MySQL DELETE query ব্যবহার করে নির্বাচনী একাধিক রেকর্ড মুছুন

  2. AND OR ব্যবহার করে নির্বাচন করার জন্য MySQL ক্যোয়ারী

  3. MySQL ক্যোয়ারী ব্যবহার করে একটি টেবিলে দ্বিতীয় সর্বোচ্চ খুঁজুন?

  4. মাইএসকিউএল ক্যোয়ারীতে দুবার লাইক ক্লজ ব্যবহার করা