ホームページ  >  記事  >  バックエンド開発  >  php mssql データベース ページング SQL ステートメント_PHP チュートリアル

php mssql データベース ページング SQL ステートメント_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:48:44836ブラウズ

MIS システムや Web アプリケーションなどのシステムを作成するときは、すべてデータベースとの対話が必要になります。データベース内のデータ量が多い場合、すべてのレコードを一度に取得すると多くのシステム リソースが占有されるため、Only を使用することがよくあります。データがある限りデータベースからレコードを取得します。つまり、ページング ステートメントを使用します。私が使用したものに基づいて、一般的なデータベース SQL Server、Oracle、および MySQL のページング ステートメントを次のように要約します。
SQL Server
データベース テーブルから、Top キーワードを使用して、M 番目のレコードから始まる N レコードを取得します。 Select ステートメントに top と order by の両方がある場合、ソートされた結果セットから選択されます:
SELECT *
FROM ( SELECT Top N *
FROM (SELECT Top (M + N - 1) * FROM table name Order by主キー desc) t1 ) t2
主キー asc で並べる
例:
select * from ( select TOP pagesize * FROM ( SELECT TOP pagesize*cureentpage * from user_table ORDER BY id ASC ) as aSysTable ORDER BY id DESC ) as bSysTable ORDER BY id ASC
例えば、テーブル Sys_option (主キーは sys_id) から 10 レコードを取得するか、20 レコードを取得するか、文は次のようになります。
SELECT *
FROM ( SELECT TOP 20 * FROM ELECT ROWNUM r,t1. * テーブル名 t1 where rownum where t2.r >= M
例えば、テーブル Sys_option (主キーは sys_id) から 10 レコードを取得するか、20 レコードを取得するか、ステートメントは次のようになります:
SELECT * FROM (SELECT ROWNUM R,t1.* From Sys_option where rownum Where t2.R >= 10

MySQLデータベース

私のSQLデータベースはmysqlのLIMITを使用した最も単純です関数、LIMIT [offset,] rows、データベーステーブル内のMレコードからNレコードを取得するステートメントは次のとおりです:
SELECT * FROMテーブル名LIMIT M,N
例えばテーブルSys_option(主キーはsys_id)から、10 レコードから、または 20 レコードを取得するには、ステートメントは次のとおりです:
select * from sys_option limit 10,20


http://www.bkjia.com/PHPjc/319685.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/319685.html

MIS システムや Web アプリケーションなどのシステムを作成するときは、すべてデータベースとの対話が必要になります。データベース内のデータの量が多い場合、すべてのレコードを一度に取得すると、多くのシステムが消費されます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。