Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql JPQL:如何将行用作存储函数调用的参数?_Postgresql_Spring Data Jpa_Jpql - Fatal编程技术网

Postgresql JPQL:如何将行用作存储函数调用的参数?

Postgresql JPQL:如何将行用作存储函数调用的参数?,postgresql,spring-data-jpa,jpql,Postgresql,Spring Data Jpa,Jpql,我有一个名为validate\u row的存储函数,它从表中获取一行并返回一个布尔值,我想执行如下查询: SELECT * FROM table T WHERE validate_row(T) = true 在PostgreSQL中直接执行此查询是可行的,但以下JPQL注释将使用表的主键作为函数参数,而不是行: @Query("SELECT someDAO from table T WHERE function('validate_row', T) = true") 关于如何将行用作参数,您

我有一个名为
validate\u row
的存储函数,它从表中获取一行并返回一个布尔值,我想执行如下查询:

SELECT * FROM table T WHERE validate_row(T) = true
在PostgreSQL中直接执行此查询是可行的,但以下JPQL注释将使用表的主键作为函数参数,而不是行:

@Query("SELECT someDAO from table T WHERE function('validate_row', T) = true")

关于如何将行用作参数,您有什么想法吗?

默认情况下,@Query作为JPQL运行Query。因此,要以SQL本机方式运行查询,请使用
nativeQuery=true

试试这个:

@Query(value = "SELECT * FROM table t WHERE validate_row(t) = true", nativeQuery = true)

我没有尝试以本机方式运行查询。