dsvtnz6350 2013-11-23 14:40
浏览 40
已采纳

我需要CodeIgniter的帮助,从数据库中获取数据

I have 3 table : users , posts , category

category : id , name

1 linux
2 Mac

users : id , name , email , image

1  Jak    t@t.com    afs
2  Stif   t2@t.com    122afs

posts : id , idc , idu , title , content

If I use getall function

function getall(){
   $this->db->limit(10);
   $this->db->order_by("id", "desc"); 
   $query = $this->db->get('posts');
   $res=$query->result();
   return $query->result();
   }

then result like this

 - 1  1  2  test   content1
 - 2  1  1  test2   content2

but I need get result like this :

 - 1  linux  Stif   test   content1
 - 2  linux  Jak    test2   content2

How do I do that?

  • 写回答

1条回答 默认 最新

  • dps43633 2013-11-23 14:46
    关注

    with join you can make the query that you want try this:

    function getall(){
       $this->db->select('*, category.id as category_id, users.id as user_id');
       $this->db->from("posts");
       $this->db->join("users", "users.id = posts.idu");
       $this->db->join("category", "category.id = posts.idc"); 
       $this->db->order_by("posts.id", "desc"); 
       $this->db->limit(10);
       $query = $this->db->get();
       $res=$query->result();
       return $query->result();
    

    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?