jpa query 中 如何判断参数 是否为空
时间: 2024-05-14 09:18:41 浏览: 227
易语言参数是否不为空源码
在 JPA Query 中判断参数是否为空,可以使用 COALESCE 函数。COALESCE 函数接受多个参数,返回第一个非空参数,如果所有参数都为空,则返回 NULL。
举个例子,假设有一个 User 实体类,其中有一个属性 name,现在需要根据 name 查询用户信息。如果没有传入 name 参数,则查询所有用户信息。可以使用以下 JPA Query:
```java
@Query("SELECT u FROM User u WHERE u.name = COALESCE(:name, u.name)")
List<User> findUsersByName(@Param("name") String name);
```
在上述 JPA Query 中,使用 COALESCE 函数判断传入的 name 参数是否为空,如果为空则返回 u.name,即不加限制条件,查询所有用户信息。如果 name 参数不为空,则返回传入的 name 参数进行查询。
注意,在使用 COALESCE 函数时,需要将 COALESCE 函数的第一个参数设置为需要判断的参数,后面的参数为默认值。
阅读全文