Ноw To Get Multidimensional Array From Csqldataprovider?

I have many to many relation. The news can have many tags. And I want to use it in CListView.




$count=Yii::app()->db->createCommand()

->select('COUNT(*)')

->from('news n')

->leftJoin('news_tags nt', 'n.news_id = nt.news_id')

->leftJoin('tags t', 't.tag_id = nt.tags_id')

->queryScalar();




$sql = Yii::app()->db->createCommand()

->select('n.*, t.tag_name)

->from('news n')

->leftJoin('news_tags nt', 'n.news_id = nt.news_id')

->leftJoin('tags t', 't.tag_id = nt.tags_id')

->text;


$dataProvider=new CSqlDataProvider($sql,array(

'keyField'=>'news_id',

'totalItemCount'=>$count,

'pagination'=>array(

'pageSize'=>10,

),

));


//$dataProvider->getData()



When I put dataProvider to CListView it has not news list but has list of pair like news1-tag1,news1-tag2 etc.

If I used CActiveDataProvider it works fine because it has multidimensional object and there is possible to use $data->tags->tag_name. But I realy need to use CSqlDataProvider.

May sombody know simple way to get multidimensional array from CSqlDataProvider?

Thanks in advance.