在 EJB-QL 中,我正在尝试创建这样的查询:
SELECT *
FROM table
WHERE id IN ([id1],[id2],[id3],...);
这是对 oracle 或 mysql 的正常查询,但如何将 EJB-QL 设置参数作为列表?
SELECT o
FROM ClassName
WHERE ClassNameId IN (List<Long> listOfIds);
有没有办法做到这一点?
更重要的是,这会比为列表中的每个 id 运行单独的查询更有效吗?
任何建议,将不胜感激。
编辑:为清楚起见,我试图运行一个查询以基于 id 列表返回多行(不是整个表,不是另一个表的内容,而是任意 id 列表)。我希望能够运行一次此查询,而不是多次运行正常的查找查询(列表中的每个 id 一次)。
谢谢,
吉姆