0

Cakephp 2.0 で $options['order'] = array('Model.name' => 'DESC'); で paginate 関数を使用すると、注文をセットアップしない場合の 5 ミリ秒と比較して、設定クエリは 7000 ミリ秒かかり、制限は 10 レコードのみに設定されます。WAMPサーバーを使用しています。

このクエリに時間がかかる理由は何ですか? 唯一の違いは、順序ルールを追加することです。「Ordered by」フィールドは索引付けされています。

解決しました:

問題は、クエリが正常に実行された後、関連するすべてのモデル ID フィールド (model_id) をインデックスとして設定しなかったことです。

4

1 に答える 1

0

orderモデルを入れてみることができます。

var $order = "field";
var $order = "Model.field";
var $order = "Model.field asc";
var $order = "Model.field ASC";
var $order = "Model.field DESC";
var $order = array("Model.field" => "asc", "Model.field2" => "DESC");

Delete-orderByクエリでこれらのオプションのいずれかをモデルに入れ、その方が速いことを教えてください。

ソース

于 2012-09-09T18:29:01.700 に答える