PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

String_agg pour plusieurs colonnes

Utilisez le || pour effectuer la concaténation des chaînes, puis agréger ce résultat.

$repairs = DB::select(DB::raw("
    select r.id repair_id, string_agg(w.name || ' ' || w.surname, ', ') workers
    from repairs r
        join repair_worker rw on r.id = rw.repair_id
        join workers w on w.id = rw.worker_id
    where r.vehicle_id = ?
    group by r.id
    "),[$vehicle->id]);