0

私はこれを持っています:

$this->_productCollection = $layer->getProductCollection() ->addAttributeToSort('special_price', 'desc');

私は次のようなことをしたい:

$this->_productCollection = $layer->getProductCollection() ->addAttributeToSort('special_price*100/price', 'desc');

実際、プロモーション/セールのパーセンテージはデータベースに保存されていません。しかし、このパーセンテージで注文したい (Mage Core または SQL を使用)。そのようにすることはできますか、それとも php を使用する必要がありますか?

Select をカスタマイズしようとしましたが、うまくいきませんでした

ありがとう

4

2 に答える 2

0

私は最終的にそれを行う方法を見つけます。

->addExpressionAttributeToSelect("pourcentage", "((100-({{special_price}}/price)*100))","special_price")
            ->addAttributeToSort("pourcentage","desc");

クエリの後にコレクションを並べ替える必要はありません!!

于 2013-01-21T09:17:48.527 に答える
0

DB に追加の列を作成し、「my_special_price」という名前を付けることができます。しかし、より良い方法は PHP を使用することです。

于 2013-01-14T17:09:16.820 に答える