Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.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
Java命名查询_Java_Jpql_Named - Fatal编程技术网

Java命名查询

Java命名查询,java,jpql,named,Java,Jpql,Named,我正在尝试创建一个Java命名查询,该查询执行以下postgres查询: select * from call_attempt where result is NULL and id like '0000000101%'; 0000000 101在我的代码中被设置为id,所以这是我想要做的,但它的格式不正确:(我不知道如何在使用%时设置id字段,它必须在“”中) 首先,您忘记了和,并将其替换为逗号 其次,%必须作为参数的一部分传递: SELECT ae FROM AttemptEntity a

我正在尝试创建一个Java命名查询,该查询执行以下postgres查询:

select * from call_attempt where result is NULL and id like '0000000101%';
0000000 101在我的代码中被设置为id,所以这是我想要做的,但它的格式不正确:(我不知道如何在使用%时设置id字段,它必须在“”中)


首先,您忘记了
,并将其替换为逗号

其次,
%
必须作为参数的一部分传递:

SELECT ae FROM AttemptEntity ae WHERE ae.result IS NULL
and ae.correlationId LIKE :id
然后,在执行查询时:

String id = "0000000101%";
query.setParameter("id", id);

您不能在NamedQuery中包含%,但可以在指定参数的值中包含它

query.setParamter("id", 0000000101+ "%");
您还需要在NULL之后添加和删除逗号


引用:

WHERE子句中有一个逗号,并且缺少一个
。这仍然是说@NamedQuery(name=AttemptEntity.JQL.NOTENDED,query=“SELECT ae FROM AttemptEntity ae WHERE ae.result为NULL,”+”和ae.correlationId LIKE:id)结尾格式错误,删除空后的逗号。我删除了空后的逗号,现在看起来还可以。谢谢
query.setParamter("id", 0000000101+ "%");