如何将这些sql代码转换为yii

时间:2015-01-21 06:13:47

标签: mysql yii

我的代码用于连接两个表并显示空值。

请将这些代码转换为Yii格式

我的sql左外连接代码

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

转换为yii格式。 请帮助我。 试着解决这个问题。

3 个答案:

答案 0 :(得分: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');

答案 1 :(得分:0)

您可以使用Yii中的关系来满足您的要求。阅读更多Relational Active Record

在您的桌子型号&t; 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;

答案 2 :(得分:0)

将其放置到您的项目模型

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