Вопрос наверное некорректно поставлен, но я что то не пойму с какой стороны к нему подходить
в одной таблице есть несколько значений с ID-ками категорий
хотя разные поля у сущности но категории лежат в одной таблице
я сделал такой костыль, но понимаю что это не очень
туплю - не понимаю как оптимизировать запрос
$qb
->select('s.id')
->addSelect('s.title')
->addSelect('s.quantity')
->addSelect('s.productCategoryId')
->addSelect('cl.name as productCategoryName')
->addSelect('a.name as accessoryCategoryName')
->addSelect('s.products')
->addSelect('s.attributes')
->addSelect('s.accessoryCategoryId')
->addSelect('s.accessories')
->from(Scenario::class, 's')
->leftJoin(Category::class, 'cl', 'WITH', 's.productCategoryId = cl.id_category')
->leftJoin(Category::class, 'a', 'WITH', 's.accessoryCategoryId = a.id_category')
->where('s.id = :id')
->setParameter('id', $id);
$query = $qb->getQuery();
здесь я второй раз джойню таблицу чтобы вытащить нужное значение
->leftJoin(Category::class, 'cl', 'WITH', 's.productCategoryId = cl.id_category')
->leftJoin(Category::class, 'a', 'WITH', 's.accessoryCategoryId = a.id_category')
кажется должен быть другой метод