SQL TOP 子句

TOP 子句

TOP 子句は、返されるレコードの数を指定するために使用されます。

数千行のレコードを持つ大規模なテーブルに対して、TOP 子句は非常に有用です。

注記:すべてのデータベースシステムが TOP 子句をサポートしているわけではありません。

SQL Server の文法:

SELECT TOP number|percent column_name(s)
FROM table_name

MySQL と Oracle の SQL SELECT TOP は同等です

MySQL 文法

SELECT column_name(s)
FROM table_name
LIMIT number

SELECT *
FROM Persons
LIMIT 5

Oracle 文法

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number

SELECT *
FROM Persons
WHERE ROWNUM <= 5

元のテーブル(例で使用されている):

Persons テーブル:

Id LastName FirstName 住所 シティ
1 アダムズ ジョン オックスフォード・ストリート ロンドン
2 ブッシュ ジョージ ファイブ・アベニュー ニューヨーク
3 カーター トーマス 长安街 北京
4 オバマ バラク ペンシルベニア・アベニュー ワシントン

SQL TOP 例

今、上記の "Persons" テーブルから最初の2つのレコードを選択したいです。

以下の SELECT 文を使用できます:

SELECT TOP 2 * FROM Persons

結果:

Id LastName FirstName 住所 シティ
1 アダムズ ジョン オックスフォード・ストリート ロンドン
2 ブッシュ ジョージ ファイブ・アベニュー ニューヨーク

SQL TOP PERCENT 例

今、上記の "Persons" テーブルから50%のレコードを選択したいです。

以下の SELECT 文を使用できます:

SELECT TOP 50 PERCENT * FROM Persons

結果:

Id LastName FirstName 住所 シティ
1 アダムズ ジョン オックスフォード・ストリート ロンドン
2 ブッシュ ジョージ ファイブ・アベニュー ニューヨーク