2015-01-21 21 views
0

我的代碼用於連接兩個表並顯示空值。如何將這些sql代碼轉換爲yii

請把這些代碼轉換爲Yii的格式左外

我的SQL代碼加入

SELECT * 
FROM tbl_pms_project LEFT OUTER JOIN tbl_pms_percentage 
ON tbl_pms_project.intProjectId = tbl_pms_percentage.intProjectId; 

轉換到警予格式。 請幫助我。 試着解決這個問題。

+0

用於該用途的關係。 – Justinas 2015-01-21 06:14:39

回答

0

它放在你的項目模型

class Project extends CActiveRecord 
{ 
...... 
public function relations() 
{ 
    return array(
     'percentage'=>array(self::HAS_ONE, 'Percentage', array('intProjectId' => 'intProjectId')), 
    ); 
} 
} 
0

您可以joinType指定的關係連接類型如下圖所示:

return array(
    'project'=>array(self::BELONGS_TO,'tbl_pms_project',array('intProjectId'=>'intProjectId'),'joinType'=>'LEFT OUTER JOIN' 
), 
); 

$criteria = new CDbCriteria; 
$criteria->with = array('project'); 
0

您可以使用關係Yii中實現您的要求。更多詳情Relational Active Record

你在「tbl_pms_project」模型的表,你應該定義一個關係到tbl_pms_percentage如下

class Project extends CActiveRecord 
{ 
    ...... 
    public function relations() 
    { 
     return array(
      'percentage'=>array(self::HAS_ONE, 'Percentage', array('intProjectId' => 'intProjectId')), 
     ); 
    } 
} 

然後當你永遠需要像下面給出的數據,你可以使用這個關係。

$project = Project::model()->findByPk(1); 
$project->percentage;