Product
次の属性があります。 Rails:製品をフィルタリングして並べ替えるには?
Model
- ショップ
- モデル
- 価格が属する:
- ブランド
、のように:
Shop Brand Model Price ---- ----- ----- ----- Ebay Sony S-100 500 Ebay Sony S-200 1000 (in Target it's cheaper) Ebay Dell D-55 300 Target Sony S-100 600 (in Ebay it's cheaper) Target Sony S-200 900 Amazon Dell D-33 100
私はつまり、私が得ることを期待し、最低価格でのみをフィルタリングしたいと思います:
Shop Brand Model Price ---- ----- ----- ----- Ebay Sony S-100 500 Ebay Dell D-55 300 Target Sony S-200 900 Amazon Dell D-33 100
、好ましく
Model
によって、その後Brand
でソートとします:Shop Brand Model Price ---- ----- ----- ----- Ebay Sony S-100 500 Target Sony S-200 900 Amazon Dell D-33 100 Ebay Dell D-55 300
どうすればいいですか?
フィルタリングする必要がありますか? –
aah!だから、あなたはmodel_idでグループ化し、最低価格を選んでソートする必要があります。あなたはファンキーなクエリでデータベース内でこれを行うことができますが、ポータブルであろうとなかろうと、それはうんざりです。私は私の答えをルビーの解決策で更新します(これはすべてのレコードが取り出されることを意味していることに気をつけてください)。 –
すべてのレコードを選択し、これらのすべての列挙可能なメソッドを使用すると、大量のデータで非常に遅くなり、不必要な複雑さを招きます。少量のデータしか取り扱っていないことが分かっていない限り、私はこの手法を絶対に避けたいと思います。 – idlefingers