在Codeigniter中使用JOIN时,从特定表中回显记录

时间:2016-02-25 14:24:04

标签: php mysql codeigniter

我尝试使用Google搜索,但在使用JOIN生成查询时,无法获取任何信息来回显特定表中的记录。

这是我的代码:

SELECT * FROM tbl1 INNER JOIN tbl2 ON tbl1.id = tbl2.id

我想从id获取tbl1。我用的时候,

echo $row->id

它确实回显了id中的tbl2列。如何从我想要的表格中获取记录?谢谢!

3 个答案:

答案 0 :(得分:1)

您需要使用别名,因为在两个表中您具有相同的列名称ID,因此您可以这样使用:

SELECT tbl1.id as id1,tbl2.id as id2 
FROM tbl1 
INNER JOIN tbl2 ON tbl1.id = tbl2.id

echo $row->id1 // for table 1
echo $row->id2 // for table 2

答案 1 :(得分:1)

因为2个表tbl1tbl2都有相同的列id,MySQL不会将它们分开并返回最后一个表的id字段。因此,您需要为id字段添加别名。

SELECT *, tbl1.id as id_tbl1 FROM tbl1 INNER JOIN tbl2 ON tbl1.id = tbl2.id

答案 2 :(得分:1)

试试这个

 SELECT tbl1.id as tb1id,tbl2.id as tbl2id FROM tbl1 INNER JOIN tbl2
    ON tbl1.id = tbl2.id