Web ページにページネーションを作成します。どれが最も効率的か知りたい
"SELECT * FROM table LIMIT 10,10"
また
"SELECT * FROM table LIMIT 10 OFFSET 10"
はいの場合、どちらがより優れており、より効率的ですか?
Web ページにページネーションを作成します。どれが最も効率的か知りたい
"SELECT * FROM table LIMIT 10,10"
また
"SELECT * FROM table LIMIT 10 OFFSET 10"
はいの場合、どちらがより優れており、より効率的ですか?
違いはありません。MySQLリファレンスのSELECT構文から
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
いくつかの例
LIMIT 5 // limit the result to the first 5 rows
LIMIT 10,5. // limit the result to 5 rows, beginning with row 11
LIMIT 5 OFFSET 10 // same meaning
私は長いバージョンを書くことを好みます.ANSI標準であり、パラメータの順序を間違えるという落とし穴を避けることができます.
LIMIT のみ:
引数が 1 つの場合、値は結果セットの先頭から返す行数を指定します。
2 つの引数がある場合、最初の引数は返す最初の行のオフセットを指定し、2 番目の引数は返す行の最大数を指定します。最初の行のオフセットは 0 (1 ではない) です。
PostgreSQL との互換性のために、MySQL は LIMIT row_count OFFSET オフセット構文もサポートしています。
違いはありません。オフセット構文は、postgres と互換性があるように提供されています。マニュアルページを参照
For compatibility with PostgreSQL, MySQL also supports the LIMIT row_count OFFSET offset syntax.