【发布时间】:2017-03-31 22:46:19
【问题描述】:
我在 codeigniter 框架中将以下语句转换为我的模型上的代码时遇到问题。
SELECT mt_prs_groups.groupId, mt_prs_groups.groupName, mt_prs_administrators.administratorId
FROM mt_prs_status INNER JOIN (mt_prs_administrators INNER JOIN mt_prs_groups ON mt_prs_administrators.administratorId = mt_prs_groups.administratorId) ON (mt_prs_status.statusId = mt_prs_groups.statusId) AND (mt_prs_status.statusId = mt_prs_administrators.statusId)
WHERE (((mt_prs_status.status)="Active") AND ((mt_prs_administrators.administratorId)=3)) OR (((mt_prs_administrators.administratorId)=4));
在我已将其翻译成的模型上
$this->db->select('mt_prs_groups.groupId, mt_prs_groups.groupName');
$this->db->from('mt_prs_status');
$this->db->join('mt_prs_administrators', 'inner');
$this->db->join('mt_prs_groups', 'mt_prs_administrators.administratorId = mt_prs_groups.administratorId AND mt_prs_status.statusId = mt_prs_administrators.statusId', 'inner');
$this->db->where('mt_prs_status.status="Active"');
$this->db->where('mt_prs_administrators.administratorId=3');
$this->db->or_where('mt_prs_administrators.administratorId=4');
这给了我下面的错误
错误号:1054
'from 子句'中的未知列'inner'
选择
mt_prs_groups.groupId,mt_prs_groups.groupNameFROMmt_prs_status加入mt_prs_administrators使用 (inner) 内部 加入mt_prs_groups开启mt_prs_administrators.administratorId=mt_prs_groups.administratorIdANDmt_prs_status.statusId=mt_prs_administrators.statusId其中mt_prs_status.status= “活动” ANDmt_prs_administrators.administratorId= 3 或mt_prs_administrators.administratorId= 4
当我将它直接放在mysql上时查询运行良好,但在codeigniter中失败。问题是内连接依赖于另一个内连接
【问题讨论】:
标签: php mysql codeigniter select inner-join