私は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