你能帮我解决下面的问题吗?
我有三种型号: - 电子邮件(表格:'电子邮件',字段:' id','电子邮件') - EmailRelGroup(表格' emails_rel_groups',字段:' id',' id_email',' id_group') - 小组(表格:'群组',字段' id',' group_name')
电子邮件可以有多个组,一个组可以有多个电子邮件。多对多的关系。
列出电子邮件及其各自群组的最佳方式是什么?
$sub_query = "
(
select group_concat(g.group_name separator ', ')
from emails_rel_groups as r
inner join groups as g
where
r.id_email = emails.id
and g.id = r.id_group
limit 1
) as groups
";
$records = Email::select('id','email')
->selectRaw($sub_query_grupos)
->orderBy('email', 'asc')
->paginate(30);