【问题标题】:Laravel select table columns with GROUP_CONCAT columnLaravel 选择具有 GROUP_CONCAT 列的表列
【发布时间】:2019-06-27 03:03:32
【问题描述】:

8 这是我的查询

$query = DB::table('hr_employees')
            ->select(DB::raw('hr_employees.id', 'hr_employees.employee_id_number', 'hr_employees.first_name', 'GROUP_CONCAT(hr_employee_daily_attendances.first_in SEPARATOR ', ') as tags'))
            ->join('hr_employee_daily_attendances', function ($join) {
                $join->on('hr_employees.employee_id_number', '=', 'hr_employee_daily_attendances.employee_id_number');
            });

        return $query->paginate();

此查询仅返回 hr_employee.id。 我需要获取所有指定的列值

有人可以帮助我吗? 提前致谢

【问题讨论】:

    标签: laravel


    【解决方案1】:

    我通过这个查询修复了它

    $query = DB::table('hr_employees')
                ->select(DB::raw('hr_employees.id, hr_employees.employee_id_number, hr_employees.first_name, GROUP_CONCAT(hr_employee_daily_attendances.first_in SEPARATOR ", ") as month_days'))
                ->join('hr_employee_daily_attendances', function ($join) {
                    $join->on('hr_employees.employee_id_number', '=', 'hr_employee_daily_attendances.employee_id_number');
                })
                ->groupBy('hr_employee_daily_attendances.employee_id_number')
                ->groupBy('hr_employees.id')
                ->groupBy('hr_employees.employee_id_number')
                ->groupBy('hr_employees.first_name');
    
            return $query->paginate(10);
    

    【讨论】:

      【解决方案2】:

      我从未见过 DB::raw 命令之外的 SELECT。尝试在 DB::raw 中移动 SELECT 语句

      【讨论】:

      • 感谢您的回复,能否请您说明如何重新排列此代码?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-29
      • 2012-05-20
      • 2015-05-27
      • 1970-01-01
      • 1970-01-01
      • 2019-02-03
      • 1970-01-01
      相关资源
      最近更新 更多