codeigniter加入2表数据

codeigniter加入2表数据

问题描述:

嗨,大家好,我是新的codeigniter,目前正在项目中的一个小项目上工作,我试图加入两个表,并显示在单个表中的数据。我看着那个笨有一个用户指南我不知道这是如何工作codeigniter加入2表数据

$this->db->join();

什么表应该是第一,什么ID键应该是冷杉。有人可以更详细地解释我这个,请使用例子,如果你可以。我正在尝试加入凭证表和tblanswers。 Tnx回答。

我试图代码中使用本实施例中的函数:

$this->db->select('*'); 
$this->db->from('blogs'); 
$this->db->join('comments', 'comments.id = blogs.id'); 

$query = $this->db->get(); 

编辑: ,而不是使用加入在笨方法是有可能使用一个简单的函数来分别检索两个表中的数据?我想要的所有内容都是将数据库表中的数据回显到我的网站页面中的html表中,以便显示是否可以编写两个get函数来分别检索两个表?

+0

您可以在模型上创建两个方法,并且每个方法都可以进行所需的查询。 – 2013-03-04 11:52:45

不要紧的位置是什么表第一...简单:

<?php 

$this->db->select('t1.name, t2.something, t3.another') 
    ->from('table1 as t1') 
    ->where('t1.id', $id) 
    ->join('table2 as t2', 't1.id = t2.id', 'LEFT') 
    ->join('table3 as t3', 't1.id = t3.id', 'LEFT') 
    ->get(); 
?> 

$this->db->join('comments', 'comments.id = blogs.id'); 

用这一行你告诉:在里面搜索我的所有评论id等于blogs.id。

通常是这样的,我认为:

$this->db->join('comments', 'comments.blogs_id = blogs.id'); 

你必须插入到你的表名为blogs_id场(unisgned int值),因为博客可以有更多的评论。 不重要的第一或第二值

+0

所以如果两个表数据具有相同的ID,连接将只能工作?例如tblanswers有身份证12和凭证有ID 12 – 2013-03-04 11:44:28

+0

在你的情况是,但我不知道你的数据库如果是正确的 – 2013-03-04 11:47:36

+0

如果ids有相同的会有一个错误重复的ID? – 2013-03-04 11:53:35

嗨,这将在codeIgnator将两个表工作。

$this->db->select("chat.id,chat.name,chat.email,chat.phone,chat.date,post.post"); 
     $this->db->from('chat'); 
     $this->db->join('post', 'chat.id = post.id'); 
     $query = $this->db->get(); 

    if($query->num_rows() != 0) 
    { 
     return $query->result(); 
    } 
    else 
    { 
     return false; 
    } 

您可以根据需要更改查询,并使用跟踪和错误方法来获得适当的结果。