Laravel Eloquent / Query Builder - 选择,子选择和分组concat

时间:2017-03-17 16:29:21

标签: php mysql laravel eloquent query-builder

你能帮我解决下面的问题吗?

我有三种型号: - 电子邮件(表格:'电子邮件',字段:' 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);

0 个答案:

没有答案