私はMySQLが初めてですが、しばらくOracleを使用しています。私は、MySQLのLIMIT
キーワードについて少し混乱しています。このキーワードは、クエリが実行されるたびに返されるデータの順序が同じであることを意味しますか?クエリに影響を与えるテーブルにデータを追加するとどうなりますか? order-by句が存在しない場合、データの順序はどのようになりますか?MySQLのLIMITキーワードは返されるデータの順序を保証しますか?
1
A
答えて
4
いいえ、LIMIT
は非決定的です。順序は、データ、使用されるインデックス、mysqlバージョン間の内部変更、ディスク上のデータの順序などによって異なります。
通常、これを避けるにはLIMIT
とORDER BY
を組み合わせます。
1
ORDER BYを指定しない限り、最初に戻される行が保証されません。
実際には、注文は通常、クラスタ化されたインデックスの順序と一致し、呼び出しごとに変わることはありません。この動作に頼らないでください。
2
LIMITは返されたデータに順序付けを行いません。
ORDER BY句を使用しない限り、制限が実行されるたびに同じ制限が返されるという保証はありません。データが挿入されると、これは順序付けられた結果と順序付けられていない結果の両方の結果に影響する可能性があります。
ORDER BY句を省略すると、基本的には順序付けを決定するデータベースに依存し、おそらくテーブルの索引付け方法に基づいています。これは、テーブルが再インデックスされたり、より多くのデータが追加されたりすると、時間とともに変化します。
関連する問題
- 1. jdbctemplateで返される列の順序を保証する
- 2. JavaScript配列の順序は保証されていますか?
- 3. str.split()の分割順序は保証されていますか?
- 4. RabbitMQは公開されたメッセージの確認がクライアントに返送される順序を保証しますか?
- 5. バインディングの順序バインディングの順序を保証する方法
- 6. Antはファイルセットの順序を保証していますか?
- 7. IPCはLinuxでメッセージの順序を保証しますか?
- 8. C++のプライベートメンバクラスのメモリ内での順序は保証されていますか?
- 9. :私は問題が限度でのfindAllクエリの返されたデータの順序を設定し、オフセットましどのセット返されたデータの順序
- 10. PHPのmysqlクエリから返された行の順序?
- 11. Future.traverseは実行順序を保証しますか
- 12. MySQLの繰り返し順序
- 13. 一括更新で操作の順序が保証されていますか?
- 14. ファイルの操作順序の保証
- 15. dict.values()は順序付きのシーケンスで返されますか?
- 16. 保証の実行順序を待っていますか?
- 17. 準備文付きのMySQLのLIMITキーワード
- 18. Type.GetProperties()は、PropertyInfo []結果の特定の順序を保証しますか?
- 19. FOREACHから返されるオブジェクトの順序は安定していますか?
- 20. 順序付き/順序なしリストの高さが返されない
- 21. Assembly.GetTypes()で返される型の順序は何ですか?
- 22. JQueryとUnderscore "each"は配列の順序を保証しますか?
- 23. String.Splitメソッドは結果配列内の順序を保証しますか?
- 24. MYSQLテーブルの行の順序は固定されているため、クエリは常にその順序でそれらを返します。
- 25. LIMIT 1のMySQL SELECT *は結果にFALSEを返しますか?
- 26. forkjoinの返り値は特定の順序で返されますか?
- 27. どの順序でmysqlでジョインが実行されますか?
- 28. なぜLimitキーワードがMysqlで動作しないのですか?
- 29. Pythonの '.join'は入力データの順序を保持していますか?
- 30. Spark DataFrame:withColumnの順序は保証されていますか?次のコードを考える