我有一个Doctrine查询;
$q = Doctrine_Query::create()->select('s.monthly_volume')
->from('SearchVolume s')
->innerJoin('s.Keywords k')
->where('k.group_id = ?',array($group_id));
我只是希望它返回结果数组中的monthly_volume值。它目前返回monthly_volume和id,我不希望它返回结果中的id。
答案 0 :(得分:1)
Doctrine会自动将主键字段添加到几乎所有类型的水合模式中的结果中。
在这样的情况下,您需要一个简单的数组并且只选择一个字段,答案是单标量水合模式。像这样使用它:
$q = Doctrine_Query::create()->select('s.monthly_volume')
->from('SearchVolume s')
->innerJoin('s.Keywords k')
->where('k.group_id = ?');
$monthly_volumes = $q->execute(array($group_id), Doctrine_Core::HYDRATE_SINGLE_SCALAR);
您应该会发现$ monthly_volumes是一个简单的一维数组,只包含您想要的值。