如何将group_concat与groupBy函数一起使用?

时间:2016-08-11 13:00:32

标签: php laravel laravel-5.2

我正在尝试使用groupBy函数连接我的users.id。但它给我一个错误。 Undefined property: stdClass::$id。我想我没有错过任何东西,因为我已经在我的文件顶部导入了use DB;

以下是我在 SQL

中的操作方法
SELECT D.department_name, GROUP_CONCAT(U.id) user_id FROM users U
INNER JOIN departments D ON D.id = U.department_id group by D.department_name;

Laravel Eloquent:

$departmentRecipient = DB::table('users')->select('departments.department_name', DB::raw('group_concat(users.id)'))
    ->join('departments', 'departments.id', '=', 'users.department_id')
    ->groupBy('departments.department_name')
    ->get();

1 个答案:

答案 0 :(得分:1)

如果您尝试访问group_contact属性,则需要为其命名。否则,MySQL将使用函数名称命名该列。

DB::raw('group_concat(users.id) AS id')