EclipseLink是否支持ORDER BY FIELD(字段,:值)

时间:2014-01-09 08:02:46

标签: java-ee jpa eclipselink jpql

MySQL支持以下查询:

SELECT id FROM users WHERE id IN(3,4,8,1) ORDER BY FIELD(id, 3,4,8,1);

EclipseLink是否支持此查询(不恢复为本机查询)?

当我尝试以下操作时:

Select id from User user where user.id in :ids ORDER BY FIELD(user.id, :ids)

我收到错误:

Syntax error parsing the query ... line 1, column 98: unexpected token [(].

1 个答案:

答案 0 :(得分:1)

JPA(JQL)或EclipseLink不支持

ORDER BY FIELD(field, :values)

JPA确实提供了一种执行本机查询的机制。您可以创建一个本机查询来调用类似于您的描述中的查询,但是,它当然不会是可移植的。