后端开发

JPA可以根据你写的一个函数名来生成对应的SQL语句,当然函数名是要符合特定规则的。

这里介绍between和in的用法

between的用法

    @Query(nativeQuery = true,
           value = "select * from z_cashier_data" +
                   "where abstract_code = ?1 " +
                   "and time BETWEEN ?2 and ?3")
    Page<CashierData> findAllabcd(String code, Date start, Date end, Pageable pageable);//函数名随意

相当于下面这条

    Page<CashierData> findAllByAbstractCodeAndTimeBetween(String code, Date start, Date end, Pageable pageable);

in的用法

    @Modifying
    @Query(nativeQuery = true, value = "DELETE from z_cashier_data where id in (:ids)")
    void deleteIn(@Param("ids") List<Long> ids);//函数名随意

相当于下面这条

    void deleteByIdIn(List<Long> ids);

}

原文地址:https://www.cnblogs.com/zhangnianlei/p/12239266.html