哪种Hibernate Join操作更有效?

时间:2013-07-09 14:03:01

标签: hibernate grails join grails-2.0

以下哪个HQL查询计算速度更快,即效率更高?

from Cat as cat
left join cat.kittens as kitten
with kitten.bodyWeight > 10.0

from Cat as cat
left join cat.kittens as kitten
where 
  kitten.bodyWeight > 10.0

1 个答案:

答案 0 :(得分:0)

HQL查询的性能取决于底层数据库。 HQL由hibernate转换为SQL。 SQL被转换为执行计划并由DBMS优化。优化和性能还取决于数据库中的数据。

查看生成的SQL并对其进行分析。您可以查看DBMS生成的执行计划。这完全独立于hibernate。

您的查询无法比较,它们不会产生相同的结果。通常,左外连接比内连接慢。