我有一个包含20个表的数据库。我想一次从10个相关表中获取记录,我正在使用Hibernate。什么是最佳解决方案:使用select with join编写单个查询,或者编写2个或3个简单查询?我想为我的服务选择更好的解决方案。
答案 0 :(得分:1)
如果表彼此相关,我会尝试使用JOINS,它们提供比仅使用嵌套查询更好(更好)的性能。
答案 1 :(得分:1)
在寻找组合多个表的数据时,尽可能经常执行内部联接。根据我的理解,它们比外连接更有效。
INNER JOIN vs LEFT JOIN performance in SQL Server
这篇文章深入解释了原因。
GL
答案 2 :(得分:0)
尝试使用, 像
select *
from producer
inner join director on director .entityId = producer.producerId
left outer join name on director .entityId = name.entityId
left outer join address on director .entityId = address.entityId
left outer join phone on director .entityId = phone.entityId
left outer join email on director .entityId = email.entityId
where producerId = 1