В запросе ниже
$subject_ids = DB::table('question_sets')
->select('subject_id')
->where('test_section_id','=',$testDetail->test_section_id)
->distinct()->get();
Вы получаете коллекцию, если вы хотите определенное значение, вы можете использовать first()
и тогда вы можете сделать
$subject_id = DB::table('question_sets')
->select('subject_id')
->where('test_section_id','=',$testDetail->test_section_id)
->distinct()
->pluck('name')
->first();
и
$topic_ids = DB::table('topics')
->select('id')
->where('subject_id','=',$subject_id)
->get();
или , если вы хотите сопоставить со всеми $ subject_ids, вы должны использовать toArray()
и whereIn
, как
$subject_ids = DB::table('question_sets')
->select('subject_id')
->where('test_section_id','=',$testDetail->test_section_id)
->distinct()
->pluck('subject_id')
->toArray();
и
$topic_ids = DB::table('topics')
->select('id')
->whereIn('subject_id', $subject_ids)
->get();