如何在JPQL中正确使用'and if',就像这样:
@Query("select t from tablename t where 1=1 and if(:a='', 1=1,t.a =:a) ")
答案 0 :(得分:0)
在JPQL中没有if。
您可以尝试这样的事情:
select t from tablename t
where (:a = '' or t.a = :a)
但是最好的方法是必须在Repo上分开方法:
// 1.
@Query("select t from tablename t where t.a =:a")
// 2.
@Query("select t from tablename t")
2。可以实现通用,因为它是一个简单的findAll