mysql - yii 查询 CActiveDataProvider 上的 4 个表

标签 mysql yii cactivedataprovider

嗨,主人,我有 4 张 table

-pekawai -佩尼拉安 -大学 -jurusan

我通常使用

    SELECT  u.nama_univ, j.singkatan, peg.* FROM pegawai AS peg LEFT JOIN penilaian AS pen ON pen.no_test=peg.no_test LEFT JOIN universitas AS u ON u.id=peg.univ_s1 LEFT JOIN jurusan AS j ON j.id=peg.bidang_s1

如何将此查询转换为 yii ?

我已经尝试过这段代码,但效果不佳

$dataProvider = new CActiveDataProvider('Pegawai', array(
    'criteria' => array(
        'select' => array(
            '`pen`.*',
            '`u`.`nama_univ` AS `nama_univ`',
            '`j`.`singkatan` AS `singkatan`'
        ),
        'join' => 'JOIN `Penilaian` AS `pen` ON `pen`.`no_test` = `t`.`no_test`',
        'join' => 'JOIN `Universitas` AS `u` ON `u`.`id` = `t`.`no_test`',
        'join' => 'JOIN `Jurusan` AS `j` ON `j`.`id` = `t`.`no_test`',
    )
));

但只有一个连接执行

最佳答案

做一件事,只需打印标准对象,例如

$dataProvider = new CActiveDataProvider('Pegawai', array(
    'criteria' => array(
        'select' => array(
            '`pen`.*',
            '`u`.`nama_univ` AS `nama_univ`',
            '`j`.`singkatan` AS `singkatan`'
        ),
        'join' => 'JOIN `Penilaian` AS `pen` ON `pen`.`no_test` = `t`.`no_test`',
        'join' => 'JOIN `Universitas` AS `u` ON `u`.`id` = `t`.`no_test`',
        'join' => 'JOIN `Jurusan` AS `j` ON `j`.`id` = `t`.`no_test`',
    )
));
echo "<pre>";
print_r($dataProvider);   //Check the object or try to post it below
exit();

关于mysql - yii 查询 CActiveDataProvider 上的 4 个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22098398/

相关文章:

php - Yii 分页显示的项目少于可用项目

php - 我可以阻止我的虚拟主机提供商访问我的 "mySQL"数据库中的信息吗?

javascript - Yii::app() 方法未定义

mysql - Yii CDbCriteria 查询匹配一个表中的多行

yii - 我应该在哪里将自定义窗口小部件文件放在Yii框架中?

php - Yii 1、获取CDbCriteria生成的SQL

php - Mysql JOIN 不返回连接表的值

php - 使用变量作为发布到 php/mysql 的值

MySql 一次更新两个表

mysql - 无法在 Yii 中获取关注者新闻源的事件?