Java 将SQL请求转换为JPQL请求
我正在学习JPQL,我想知道如何将这个查询转换成JPQL 我有实体Java 将SQL请求转换为JPQL请求,java,jpql,Java,Jpql,我正在学习JPQL,我想知道如何将这个查询转换成JPQL 我有实体Astre用于astres表,有Planete用于planetes表generate_series()是PostgreSQL函数 SELECT t1.galaxie, t1.ss, t1.position FROM ( SELECT galaxie, ss, position FROM generate_series(1, 9) galaxie CROSS JOIN generate_series(1, 5
Astre
用于astres表,有Planete
用于planetes表generate_series()
是PostgreSQL函数
SELECT t1.galaxie, t1.ss, t1.position FROM
(
SELECT galaxie, ss, position FROM
generate_series(1, 9) galaxie
CROSS JOIN generate_series(1, 500) ss
CROSS JOIN generate_series(1, 15) position
) t1
LEFT JOIN
(
SELECT a.galaxie, a.ss FROM astres a
INNER JOIN planetes p
ON a.id=p.astre_id
WHERE p.planete_mere=TRUE
GROUP BY a.galaxie, a.ss
HAVING COUNT(*)=3
) t2
ON t1.galaxie = t2.galaxie
AND t1.ss = t2.ss
LEFT JOIN
(
SELECT a.galaxie, a.ss, a.position FROM astres a
INNER JOIN planetes p
ON a.id=p.astre_id
) t3
ON t1.galaxie=t3.galaxie
AND t1.ss=t3.ss
AND t1.position=t3.position
WHERE t2.galaxie IS NULL
AND t3.galaxie IS NULL
ORDER BY t1.galaxie, t1.ss, t1.position
如果需要,我可以提供实体代码
谢谢你的帮助。不行。使用本机查询。好的,谢谢,但为什么?是因为我使用了
generate_series()
函数吗?是的,还因为on
子句中的,因为from子句中的子查询,以及交叉连接ok…我们不能将子查询与JPQL一起使用?可以,但不能在from子句中使用。在where子句中,它是可以的。另外,在select子句中也可以。