【发布时间】:2018-09-06 07:38:03
【问题描述】:
我正在使用 Spring 数据存储库来构建 Web 应用程序。我在哪里使用 @Query 注释的自定义查询。当我使用以下查询时
select u from UserAdmin u where (u.firstName like :firstName% or:firstName is null)
在这种情况下,如果:firstName 参数为null,则返回所有记录,否则仅返回like 语句匹配的记录。 (按预期工作)
select u from UserAdmin u where ( :firstName is null or u.firstName like :firstName% )
在这种情况下,如果:firstName参数为null,则查询返回所有记录,否则仅当u.firstName = :firstName条件为真时才返回记录。 (在这种情况下,Like 语句没有按预期工作)
谁能解释这种行为的原因?
谢谢
【问题讨论】:
-
尝试使用concat函数...
标签: sql postgresql hibernate spring-data spring-data-jpa