Php Doctrine2:SELECT中的本机SQL别名
我正试图与这个问题保持距离 我尝试了下面的方法,它有效,但打断了我的其他查询Php Doctrine2:SELECT中的本机SQL别名,php,sql,native,doctrine-orm,Php,Sql,Native,Doctrine Orm,我正试图与这个问题保持距离 我尝试了下面的方法,它有效,但打断了我的其他查询 $rsm = new ResultSetMapping; $rsm->addEntityResult('Default_Model_School', 's'); $rsm->addMetaResult('s', 'distance', 'distance'); // no $rsm->addFieldResult('s', 'id', 'id'); $rsm->addFieldResult('s
$rsm = new ResultSetMapping;
$rsm->addEntityResult('Default_Model_School', 's');
$rsm->addMetaResult('s', 'distance', 'distance'); // no
$rsm->addFieldResult('s', 'id', 'id');
$rsm->addFieldResult('s', 'establishment_name', 'establishment_name');
$query = $this->_em->createNativeQuery(
'SELECT *, a*b AS distance
FROM schools',
$rsm);
并将列添加到我的实体中
$rsm->addMetaResult('s', 'distance', 'distance');
这似乎不正确,因为该列不存在。只是一个问题,但在db级别,您想做什么?我会选择在数据库中存储距离,或者在实体中动态计算距离,这应该很便宜。
/**
* @var string $distance
* @Column(type="string")
*/
private $distance;