金額範囲と特定のuser_idで注文をフィルタリングできるようにしたいと思います。期待される結果は、指定されたユーザーが特定の金額範囲で入札した注文のみを取得することです。
たとえば、IDが1の注文があります。ユーザー5は200の金額で入札します。ここで、フィルターをかける場合は、user_idフィルターを5に設定し、範囲フィルターを150〜250の金額に設定します。
そのようにフィルタリングできるようにスフィンクスを構成するにはどうすればよいですか?
私は次のテーブルを持っています:
注文:
+-------------+-----------------------+
| Field | Type |
+-------------+-----------------------+
| id | mediumint(8) unsigned |
| title | varchar(100) |
| description | text |
+-------------+-----------------------+
入札:
+--------------+-----------------------+
| Field | Type |
+--------------+-----------------------+
| id | mediumint(8) unsigned |
| order_id | mediumint(8) unsigned |
| user_id | mediumint(8) unsigned |
| amount | mediumint(9) |
+--------------+-----------------------+
私はスフィンクスの構成で次のことを試しました。しかし、user_idを先頭に設定することはできません。その結果、(すべてのユーザーから)その金額範囲で入札されたすべての注文を取得し、ユーザーが入札したすべての注文を取得します。
sql_attr_multi = uint amount from query; SELECT order_id as id, amount FROM bids
sql_attr_multi = uint user_id from query; SELECT order_id as id, user_id FROM bids
ありがとう