我遇到了一个问题,我需要通过将实体的两列相乘来进行排序,为了想象,实体是:
@Entity
public class Entity {
@Column(name="amount")
private BigDecimal amount;
@Column(name="unitPprice")
private BigDecimal unitPrice;
.
.
.
many more columns
}
我的repo接口实现了JpaRepository和QuerydslPredicateExecutor, 但我正在努力寻找一种通过“金额*单价”对数据进行排序的方法, 因为我找不到将它放入其中的方法
PageRequest(new Sort.Order(ASC, "amount * unitPrice")
)
没有PropertyReferenceException:没有属性数量*抛出单价...。
我无法为用户命名查询,因为我的查询需要根据用户输入进行大量过滤(无法将where子句放入查询中,因为如果用户未选择任何值,那么where子句就不能位于查询)。
简单点。我需要诸如findAll(Predicate,Pageable)之类的东西,但我需要强制该查询按“金额*单价”对其进行排序,同时还要保留我的Preditate(过滤器)和Pageable(偏移量,限制,其他排序)。 >