我的正常查询是这样的。
$qb = $placeRepository->createQueryBuilder('p');
var_dump($qb->getQuery()->getResult());
作为对象,我会得到很少的结果。所以这是正常的行为。
然后我想添加一个自定义字段ResultSetMapping
。
$qb = $placeRepository->createQueryBuilder('p');
$qb->addSelect('123 as distance');
$rsm = new ResultSetMapping;
$rsm->addEntityResult(Place::class, 'p');
$rsm->addFieldResult('p', 'id', 'id');
$rsm->addScalarResult('distance', 'distance');
var_dump($qb->getQuery()->setResultSetMapping($rsm)->getResult());
随着ResultSetMappingBuilder
它也不起作用。
$qb = $placeRepository->createQueryBuilder('p');
$qb->addSelect('123 as distance');
$rsm = $placeRepository->createResultSetMappingBuilder('p');
var_dump($qb->getQuery()->setResultSetMapping($rsm)->getResult());
不工作意味着:其中包含零项的数组。