我有几个这样的Oracle SQL查询:
SELECT USUARIO
FROM (SELECT DISTINCT CREATED_BY USUARIO FROM COMPROBANTE_PPTAL);
现在,我需要使用JPA(Eclipselink jpql)格式的相同查询
我没有运气尝试过这个:
SELECT s FROM (SELECT DISTINCT c.createdBy AS USUARIO FROM ComprobantePptal c ) s
如果我在eclipselink上下文中执行此操作,则会收到此错误:
(SELECT DISTINCT c.createdBy AS USUARIO FROM ComprobantePptal c) s' cannot be the first declaration of the FROM clause
所以这意味着我不能在from子句的第一部分中使用subselect。
如果我尝试:
SELECT s,c FROM ComprobantePptal c, (SELECT DISTINCT c.createdBy AS USUARIO FROM ComprobantePptal c ) s
现在查询可以工作了,但结果却充满了我从from子句的第一部分得到的“垃圾”数据。
有什么方法可以只在Eclipselink / jpql中执行查询吗?如果答案是否定的,请向我显示我可以使用的解决方法。我没有主意,我有超过1000个这样的查询,并且不能选择使用本机查询,因为我需要项目独立于数据库。