Join DBIx::类中联接和预取的区别

Join DBIx::类中联接和预取的区别,join,dbix-class,prefetch,perl,Join,Dbix Class,Prefetch,Perl,请详细解释DBIx::Class中的join和prefetch之间的区别 JOIN映射到SQL中的JOIN,对吗 prefetch可以读取相关表中的所有数据,对吗 但在我看来,如果一个与一个表有关系,那么连接和预取这个表做的事情完全相同,添加一个SQL连接。对吗?对于has\u a关系,join和prefetch之间有什么区别吗 因此,何时使用其中一种(特别是对于具有_a关系)?预取是连接的糖分+选择并用相关结果对象填充缓存,因此在调用关系访问器方法时不会触发SQL查询。您还没有回答我的问题:当

请详细解释
DBIx::Class
中的
join
prefetch
之间的区别

JOIN
映射到SQL中的
JOIN
,对吗

prefetch
可以读取相关表中的所有数据,对吗

但在我看来,如果一个
与一个表有
关系,那么连接和预取这个表做的事情完全相同,添加一个SQL
连接
。对吗?对于
has\u a
关系,
join
prefetch
之间有什么区别吗


因此,何时使用其中一种(特别是对于
具有_a
关系)?

预取是连接的糖分+选择并用相关结果对象填充缓存,因此在调用关系访问器方法时不会触发SQL查询。

您还没有回答我的问题:当相关关系为
has\u a
时,
join
Prefetch
之间有什么区别吗?你说,
prefetch
是join的“糖”。所以两者产生相同的
连接
,对吗?那有什么区别呢?