查看数字是否在两个值之间的最快方法

时间:2019-02-25 09:53:51

标签: java spring

我正在使用Spring + JPA

我有一个表,该表包含MIN_VALUE和MAX_VALUE。

然后我有一个输入值为VALUE的服务。知道该值是否在MAX和MIN值之间的最快/更好的方法是什么?

@Autowired
private ValuesRepository valuesRepository;

public void calculateValue(double value) {
    List<Values> valuesList = valuesRepository.findAll();
    // ??
}

编辑也许最好执行已返回一行的选择?

public interface ValuesRepository extends JpaRepository<Values, Long> {

    public Values // ??
}

2 个答案:

答案 0 :(得分:1)

findReferenceFieldBetween(value1,value2);

假设您的参考字段为,然后

findByValueBetween(Your Max Value, Your Min Value)

有关更多详细信息,请参见Query with Jpa

答案 1 :(得分:0)

您可以通过使用JPA中的GreaterThan和LessThan来检查两个不同字段之间的值

不包括边界:-

public T findOneBySinceGreaterThanAndUntilLessThan(Long since, Long until);

包括边界:-

public T findOneBySinceGreaterThanEqualAndUntilLessThanEqual(Long since, Long until);

参考文档:https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods.query-creation