Cdbcriteria As Subquery

I needed CDbCriteria as a subquery so I did this in my ActiveRecord:




$subQuery=$this->commandBuilder->createFindCommand($this->tableName(),$criteria)->text;

        

        $subQuery='('.str_replace(array_keys($criteria->params),array_values($criteria->params),$subQuery).') sq';




it works, but I think there may be a better and cleaner solution for this

any suggestion?