2011-05-17 63 views
0

额外的字段我有一个原则查询;主义查询返回结果

$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。

回答

1

学说自动添加在几乎所有类型的水化模式主键字段的结果。

在这样的地方,你想要一个简单的数组,只有被选择的单场的情况下,答案是单个标水化模式。使用这样的:

$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是只包含您想要的值(一个或多个)一个简单的一维数组。

+0

这非常有意义。谢谢Jweible。 – Sid 2011-05-19 09:06:23

+0

@Sid很高兴我能帮到你。不久前我必须自己解决同样的问题。 – ybull 2011-05-19 16:35:36

+0

而对于返回多个值的查询,我怎么才能得到一个只有值的一维数组? – JCM 2012-04-08 18:38:20