基本的に単なるクエリビルダーであるこのライブラリを使用します。
次のクエリ:
SELECT * FROM car_search ORDER BY car_model_name ASC, car_id DESC LIMIT 2;
その結果:
+------+----------------+---------------------+
| id | car_model_name | car_id |
+------+----------------+---------------------+
| 33 | Audi | 17461 |
| 20 | Bentley | 17439 |
+------+----------------+---------------------+
クエリの順序を次のように変更すると、
SELECT * FROM car_search ORDER BY car_model_name ASC, car_id ASC LIMIT 2;
ご覧のとおり、順序を から に変更しました。これcar_id DESC
はcar_id ASC
、結果が MySQL とほぼ同じように順序付けられることを期待してのことです。Sphinx が最初のクエリを除いて注文クエリを無視しているようです。
ただし、返される結果は両方のクエリでまったく同じです。
Sphinx docで並べ替えモードについて読んだことがありますが、PHP sphinx クライアントを使用する場合にのみ実行できるようです。
min_prefix_len
おそらく 、 などのように、代わりにインデックス構成に書き込む方法はありますenable_star
か?
それともクエリから直接?