Yii框架多表查询实例:总共分为两个步骤(以下的代码我全部都写在model中):1、先在主表model中声明关联表中所需要查询的字段。
public $surveyls_description; //专题下相关问卷的描述
public $answer; //专题问卷的答案选项
2、编写正确的关联语句。
/**
* 根据专题id获取父专题的信息(包括问卷)
*/
public function getParentTopic($tid){
if($tid){
$c = new CDbCriteria();
$c->addCondition('tid='.$tid);
$c->join='left join lime_surveys_extension as se on t.tid=se.topic_id ';
$c->join.='left join lime_surveys_languagesettings as sl on se.sid=sl.surveyls_survey_id ';
$c->join.= 'left join lime_questions as q on se.sid = q.sid ';
$c->join.= 'left join lime_answers as a on q.qid=a.qid';
$c->select='t.tid,t.topic_title,sl.surveyls_description,a.answer';
$model = self::model()->findAll($c);
return $model;
}
}