ページングクエリとはデータベースクエリでよく使われる技術で、データをページ単位で表示する機能を実現できます。 Oracle は強力なリレーショナル データベース管理システムであり、ページング クエリを実装する際の独自の構文と関数のセットも備えています。この記事では、SQL ステートメントを使用して Oracle でページング クエリを実装する方法を詳しく紹介します。
1. Oracle でページング クエリを実装するための一般的な構文
Oracle でページング クエリを実装するための構文は ROWNUM とサブクエリです。つまり、ROWNUM は返される行数を制限するために使用されます。サブクエリはクエリの開始行と終了行を同時に制御するために使用されます。
構文形式は次のとおりです。
SELECT * FROM (
SELECT t.*, ROWNUM RN
FROM (SELECT * FROM table_name ORDER BY column_name ASC) t
WHERE ROWNUM <= :page * :size
)
WHERE RN > (:page - 1) * :size;
注意すべき点: page と :size はそれぞれ次のことを表しますページの数とページごとのデータ量。
2. Oracle にページング クエリを実装するための具体的な手順
1. ページング クエリのデモンストレーション用のテーブルを作成する
Oracle にページング クエリを実装するためのテスト テーブルを作成する必要があります。 SQL ステートメントは次のとおりです。
CREATE TABLE t_page_query
(
id NUMBER(10) PRIMARY KEY,
name VARCHAR2(50) NOT NULL,
age NUMBER(3) NOT NULL
);
2. テスト データの挿入
データの挿入を続けます。SQL ステートメントは次のとおりです:
INSERT INTO t_page_query(id, name , 年齢) VALUES( 1, 'トム', 18);
INSERT INTO t_page_query(id, 名前, 年齢) VALUES(2, 'ジャック', 20);
INSERT INTO t_page_query(id, 名前, 年齢) VALUES(3, 'ルーシー', 19);
INSERT INTO t_page_query(id, name, age) VALUES(4, 'Amy', 22);
INSERT INTO t_page_query(id, name, age) VALUES (5, 'ジェシー ', 21);
INSERT INTO t_page_query(id, name, age) VALUES(6, 'Chris', 23);
INSERT INTO t_page_query(id, name, age) VALUES(7 , 'クリス', 18);
INSERT INTO t_page_query(id, name, age) VALUES(8, 'Nick', 19);
INSERT INTO t_page_query(id, name, age) VALUES(9, 'ジム', 25) ;
INSERT INTO t_page_query(id, 名前, 年齢) VALUES(10, 'リサ', 26);
INSERT INTO t_page_query(id, 名前, 年齢) VALUES(11, 'アンソニー' , 22);
COMMIT;
3. ページング クエリのデモ
上記で作成した t_page_query テーブルを使用してページング クエリのデモを実装します。SQL ステートメントは次のとおりです:
SELECT * FROM (
SELECT t.*, ROWNUM RN
FROM (
SELECT *
FROM t_page_query
ORDER BY age ASC
) t
WHERE ROWNUM < ;= :page * :size
)
WHERE RN > (:page - 1) * :size;
:page および 上記の SQL ステートメントの :size は、ページ数と各ページに表示されるデータの量 パラメータはプログラミング言語を通じて動的に渡すことができます。
ページング クエリは多くのシナリオで使用されます。たとえば、Web サイトで大量のデータを表示する場合、帯域幅を節約するために、データは通常ページに読み込まれます。この記事の導入を通じて、SQL ステートメントを使用して Oracle にページング クエリを実装する方法を学習できたと思います。
以上がページング クエリ SQL ステートメント Oracleの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。