JPA存储库:如何将列值乘以参数值

时间:2017-05-30 07:19:37

标签: java mysql sql spring jpa

我希望将数据库中的移动值乘以' km'来自参数的值并返回结果,当我使用以下查询时,它给出了一个错误,即该点的参数[1]不存在

请帮助我如何计算卡路里?

public interface FareRateRepository  extends JpaRepository<FareRate, Long>{

    @Query("select f.moving* :km from FareRate f where f.id=1" )
    float  calculateFare(@Param("km") Long km);

}

2 个答案:

答案 0 :(得分:2)

你错过了“:”

select f.moving* :km from FareRate f where f.id=1

答案 1 :(得分:0)

试试这个

@Query(value = "select ( f.moving * ?1 ) as fare from FareRate f where f.id=1", nativeQuery = true )
float  calculateFare(Long km);

注意:您必须在查询中指定实际的表名而不是FareRate。这将运行本机查询。