У меня есть запрос данных, некоторые из которых должны быть массивом, но я не знаю, как получить эти массивы внутри моего запроса.
Снимок экрана
У меня есть 2 students
в 2 semester
и 4 different classes
, что я пытаюсь добиться, чтобы получить каждого студента semester and classes
в массиве.
Так что у меня были бы такие результаты, как этот :
код
$students = DB::table('schools')
->where('schools.id', $id)
->join('school_semesters', 'school_semesters.school_id', '=', 'schools.id')
->join('semester_classes', 'semester_classes.semester_id', '=', 'school_semesters.id')
->join('class_students', 'class_students.class_id', '=', 'semester_classes.id')
->join('users', 'users.id', '=', 'class_students.user_id')
->select(
'school_semesters.name as semester',
'semester_classes.name as class',
'users.name as students',
'users.id as id'
)
->groupBy('users.id') // return results as screenshot #2
->get();
Есть идеи?
Обновление
ожидаемый результат будет примерно таким:
semester: ["Winter semester", "Our Spring semester"]
class: ["A1", "B1"]
students: "Student Two"
id: 5
DT_RowId: 5
, поэтому semester
и class
будут массивом.