これらの方法の1つが最も効率的であるジレンマのIm。
複数のテーブルを結合し、数千のレコードをクエリするクエリがあるとします。それよりも、これらすべての結果を通じて合計をページ付けする必要があります。
速いですか?
1)完全な選択(50の列を選択する必要があると仮定)を実行し、行をカウントしてから、制限付きで別のクエリを実行しますか?(MySQLキャッシュは、この場合、カウントに使用される最初のクエリで必要なすべての列をすでに選択するのに役立ちますか?)
2)最初にCOUNT関数を使用してクエリを実行し、次にクエリを実行して必要な結果を選択します。
3)MySQL COUNT関数を使用する代わりに、たとえばIDを選択するクエリを実行し、PHP関数mysql_num_rowsを使用しますか?
- COUNT関数に組み込まれたMySQLを使用する場合は、2番が最適なオプションだと思いますが、MySQLがキャッシュを使用することはわかっているので、最初のクエリですべての結果を選択する方が速くなりますか?
ありがとう、