MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL LIMIT、OFFSETを使用したページ付け?


まず、いくつかのレコードを含むテーブルを作成する必要があります。次に、limitとoffsetを使用してページ付けを使用します。

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;

上記のクエリでは、value1はレコードを表示する必要がある場所を示し、value2はレコードの数を示します。

今、私は上記のクエリを適用して結果を取得しています。これは次のとおりです-

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クエリを使用してテーブルの2番目の最大値を見つけますか?

    LIMIT 1OFFSET1を使用できます。最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Value int    -> ); Query OK, 0 rows affected (0.92 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(1); Query OK, 1 row affected (0.13 sec) mysql

  2. MySQLクエリでLIKE句を2回使用する

    まずテーブルを作成しましょう- mysql> create table DemoTable2009 (    Name varchar(20) ); Query OK, 0 rows affected (0.51 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2009 values('John Doe'); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable2009 valu