2017-07-11 9 views
0

私はデータベースを学んでいます。私はLIMITというキーワードとその使い方を知りました。それはn行 sqlとmysqlの制限構文の違い

、別のチュートリアルでは、それはオフセット行

をスキップした後の行のROW_NUMBERを選択します

LIMIT offset, row_numberとして書かれていたがスキップした後の行のROW_NUMBERを選択します

LIMIT row_number OFFSET nとして指定されたいくつかのチュートリアルで

ここで正しい構文は何ですか、両方が正しい場合は何を使用するのですか?

+0

要件に基づいて、それらのいずれかを使用することができる唯一の構文差

はありますか? –

+0

はい、私はそれらを試してみました。彼らは一緒に働いていません。最初の構文がどこか別の場所で動作していて、混乱しています。@DarrenSweeney – trim24

+0

最初の構文はいつ動作しますか? – jarlh

答えて

2

LIMIT row_number OFFSET n構文は

LIMIT offset, row_numberのMySQL、PostgreSQLとSQLiteの

です

のMicrosoft SQL Serverが完全に異なるアプローチを使用してMySQLのためのものです:https://stackoverflow.com/a/26051830/234661

FirebirdSQL:https://stackoverflow.com/a/10440718/234661

Oracleは同様に困難です2つの方法を使用します。推奨されるものはROWS m TO nです。https://firebirdsql.org/refdocs/langrefupd20-select.html#langrefupd20-select-rows

実装前に標準化されていないため、これらは異なっています。

0

どちらも同じ結果を出すのと同じです。

の違いは、第二使用したときだけである1 LIMIT offset, row_number あなたは、あなたがそれらを試してみました