1

私はgrails1.3.7を使用しています。私は次のようなドメインクラスの製品を持っています:

class Product = {
   String name
   Float price
   Float discount = 0.0
}

HQLを使用してテーブルで検索を実行しています(なぜ使用createCriteriaしないのか尋ねないでくださいfindAllBy。私の構造は、1つの製品ドメインよりもはるかに詳細です)。特定のmaxPriceとminPriceの間を検索する必要があるので、次のようにします。
select p from Product p where p.price between :minPrice and :maxPrice

requireパラメータを渡すと、すべてうまく機能します。次に、割引価格内で検索するようにHQLクエリを変更する必要があります。どうすれば次のようなことができますか?
select p from Product p where p.price between :minPrice - p.discount and :maxPrice - p.discount

4

1 に答える 1

0

どうやらあなたはすることができます:
select p from Product p where p.price - p.discount between :minPrice and :maxPrice

于 2012-11-05T10:50:21.627 に答える