这很简单,但是我不知道如何解决它。
我想在查询参数“ empresaId”为NULL时选择所有记录,而不是现在没有选择任何记录。那就是当“ empresaId”为空时,就好像存在这样的条件。

   @Query("select paquete from Paquete paquete where paquete.empresa.id =:empresaId")
   Page<Paquete> advancedSearch(@Param("empresaId") Long empresaId, Pageable pageable);


有人可以帮我吗。
非常感谢你。

最佳答案

在这种情况下,简单的方法是添加一个or条件,以检查参数是否为null,因此在这种情况下它将返回true,并且将提取所有行。

@Query("select paquete from Paquete paquete where paquete.empresa.id =:empresaId or :empresaId is null")


如果还有更多动态条件,可以查看Query By Example,它允许创建动态查询。

07-25 23:52