次のSQLクエリを準備しようとしていますが、残念ながらうまくいきませんでした。
select course.course_name, enroll.start_date from dp_courses course LEFT OUTER JOIN dp_enroll enroll ON course.id = enroll.course_id and enroll.student_id=3
$criteria=new CDbCriteria(array(
'order'=>'update_time DESC',
'with'=> array('enroll'),
));
$criteria->alias = 'course';
$criteria->together=true;
$criteria->join='LEFT OUTER JOIN dp_enroll ON dp_enroll.course_id=course.id and dp_enroll.student_id='. Yii::app()->user->id;
//$criteria->condition='dp_enroll.student_id='. Yii::app()->user->id;
コースモデルの関係は次のとおりです。
public function relations() {
return array(
'enroll'=> array(self::HAS_MANY, 'Enroll', 'course_id'),
'author' => array(self::BELONGS_TO, 'YumProfile', 'author_id'), ); }
しかし、結果のSQLクエリは私が望むものです
LEFT OUTER JOIN dp_enroll enroll ON course.id = enroll.course_id **and** enroll.student_id=3
and演算子を使用して 2 つの属性でテーブルを結合する