【发布时间】:2019-07-12 05:32:13
【问题描述】:
我在 codeigniter 中实现内部连接时卡住了。没有 where 条件它工作正常。但是当我使用 where 条件时,它返回空结果。 请帮我找出问题所在。
$this->db->select('*');
$this->db->from('user');
$this->db->join('issue', 'user.id = issue.uid', 'inner');
$this->db->where('issue.uid', $id);
$query = $this->db->get()->result_array();
return $query;
这是最后的查询
SELECT * FROM `tbl_user` INNER JOIN `tbl_issue` ON `tbl_user`.`id` =
`tbl_issue`.`uid` WHERE `tbl_issue`.`uid` = '2'
感谢任何解决方案!
【问题讨论】:
-
您检查了吗,您的数据库中有与 uid 匹配的记录?
-
使用以下函数获取原始查询 $this->db->last_query() 并比较看看这是您想要的查询还是其他查询。
-
是的@UzairKhan,如果我在没有 where 条件的情况下运行查询,它将返回两个表中的所有记录匹配,但我只需要一个
-
获取@user1309690 提到的原始查询,以检查您的查询是否收到了 $id
-
SELECT * FROM
tbl_userINNER JOINtbl_issueONtbl_user.id=tbl_issue.uidWHEREtbl_issue.uid= '2' 运行此查询在您的 phpmyadmin 中检查您是否有任何问题或您有匹配的记录。
标签: php mysql codeigniter