MySQL にはトップ クエリはありませんが、制限クエリを使用すると同じ効果を得ることができます。構文は「SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset」です。
mssql サーバーへのアクセスに慣れている友人は、mysql で最初の N レコードをクエリするときに、select top n 形式のステートメントを使用することに慣れているかもしれません。ここで説明します。 , mysql にはこの構文がありませんが、Mysql は関連関数を実装するためにlimitを使用しており、この関数はより強力であり、GOODです。以下は、mysql での制限の使用方法の詳細な説明です。
構文:
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
LIMIT 句を使用すると、SELECT ステートメントに指定された数のレコードを強制的に返すことができます。 。 LIMIT は 1 つまたは 2 つの数値引数を受け入れます。パラメータは整数定数である必要があります。
2 つのパラメーターが指定された場合、最初のパラメーターは最初に返されるレコード行のオフセットを指定し、2 番目のパラメーターは返されるレコード行の最大数を指定します。
最初のレコード行のオフセットは (1 ではなく) 0 です: PostgreSQL との互換性のために、MySQL は構文 LIMIT # OFFSET # もサポートしています。
mysql> SELECT * FROM table LIMIT 5,10; //レコード行 6 ~ 15 を取得します。10 がオフセットであることに注意してください
//特定のオフセットからレコードの末尾までのすべての行を取得するにはレコード行を設定する場合、2 番目のパラメータを -1 として指定できます:
mysql> SELECT * FROM table LIMIT 95,-1; // レコード行 96-last を取得します。
// パラメータが 1 つだけ指定された場合、レコード行の最大数を返すことを示します:
mysql> SELECT * FROM table LIMIT 5; //最初の 5 レコード行を取得します//言い換えると、LIMIT n は LIMIT 0,n と同等です。
データの最後の数部分を取得したい場合は、id desc で追加の順序を追加できます。
mysql は select top n の構文をサポートしていないため、次のように置き換える必要があります。
select * from tablename order by orderfield desc/asc limitposition, counter;
position はクエリを開始する場所を示し、0 の場合は先頭から開始し、counter はクエリの数を示します
Get the最初の 15 レコード:
select * from tablename order by orderfield desc/asc 制限 0,15
以上がmysqlにはトップクエリがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。