我有这样的结构:单个个人资料可以参加多项研究,并且对于每项研究,都有一个statute
外键字段study_statute
。在每一行的 HTML 中,我需要显示个人资料的信息:profile.name、profile.study.field、profile.study.statute。我已经使用
$profileRepository->findAll()
但它会产生很多查询,我想优化。目前有查询获取配置文件,每个配置文件要求研究,每个研究要求法规名称。因此,如果有 2 个个人资料,并且每个个人资料都参加了 2 项研究,我有
1(列表)+1(配置文件#1的研究列表)+2(上述每个研究的研究名称)+1(配置文件#2的研究列表)+2(上述每个研究的研究名称)查询。
如何优化这个?
在普通的 PHP 中,我会这样做:为所有与研究和研究名称连接的配置文件获取大表,并将其解析为多维数组 fe $profile[1]['studies'][1]['name']
。