1

我正在使用 grails 1.3.7。我有一个这样的域类产品:

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

我正在使用 HQL 在我的表中执行搜索(请不要问我为什么不使用createCriteriaand findAllBy,我的结构比一个产品域要详细得多)。我需要在特定的 maxPrice 和 minPrice 之间进行搜索,所以我这样做:
select p from Product p where p.price between :minPrice and :maxPrice

我传递了需要的参数并且一切正常。现在我需要更改 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 回答