我使用Kotlin,Spring Boot并Spring Data有Hibernate和Postgresql。
我们创建了一个存储库类,它扩展JpaRepository并发现如果提供可为空的参数,本机查询将不起作用。
在此示例中,isInternal如果我们还不知道该信息(与我们的数据库中的信息相同),则参数可以是 true、false 或 null。
    @Query(
        nativeQuery = true,
        value = "SELECT * FROM story WHERE is_internal = :isInternal",
        countQuery = "SELECT COUNT(*) FROM story WHERE is_internal = :isInternal"
    )
    fun findEmployeeStories(
        @Param("isInternal") isInternal: Boolean?,
        pageable: Pageable
    ): Page<StoryEntity>
Run Code Online (Sandbox Code Playgroud)
此查询导致:
org.postgresql.util.PSQLException: ERROR: operator does not exist: boolean = bytea
  Hint: No operator matches the given name and argument type(s). You might need to …Run Code Online (Sandbox Code Playgroud)