如何使用JPQL以有效的方式连接多个表
select a.text,b.text,c.text,
from Class1 a, Class2 b, Class3 c
where a.id=b.b_id and b.id=c.b_id and a.text like ... and b.text like ...
我正在做这样的事情,表只有几千行,但查询需要5-6秒才能运行。我假设在进行过滤之前它正在连接所有表
我知道速度可能是特定于JPA供应商的实现,但我怀疑这不是编写此查询的正确方法!
答案 0 :(得分:1)
查看已生成的SQL查询。然后EXPLAIN
查询并尝试优化它。例如,确保您有适当的索引。
答案 1 :(得分:0)
如果您不喜欢JPA正在生成的SQL(但我怀疑它生成“坏”SQL),您始终可以使用Native Query。