트리 구조를 가지고 있으며, Gedmo\Tree
에 의해 관리됩니다. 하위 트리에서 한 필드에 대해 복잡한 업데이트를 만들고 싶습니다.이 업데이트는 다른 테이블과의 조인이 필요하며 DQL에서 지원하지 않습니다. 그래서 Gedmo\Tree
저장소 방법 childrenQueryBuilder
에 의해 DQL 빌더를 얻고, 그것을 QueryBuilder
으로 변환하고 update 문을 추가하려고합니다.DQL 쿼리 작성기를 쿼리 작성기로 변환 할 수 있습니까?
$dqlQueryBuilder = $repository->childrenQueryBuilder($node, ...);
$dqlQueryBuilder->resetDQLParts(['select', 'orderBy']);
$queryBuilder = convert($dqlQueryBuilder);
$queryBuilder->leftJoin('...', 'lj');
$queryBuilder->update('node.update', 'concat(node.field, lj.field)');
나는 이러한 변환은 교리 내장 도구 나 일부 3 번째 파티 라이브러리에 의해 가능하면 난 그냥 궁금, 내가 정의 QueryBuilder
을 쓸 수 있다는 것을 알고있다.
DQL에서 사용자 정의 DB 기능이 작동하는 방법에 대한
확인 documentation 당신은 DQL을 게시 할 수 있습니까? 아니면 단순화 된 버전일까요? –
예, OP –