简体   繁体   English

sql查询联接三个表

[英]sql query joining three tables

I have to select category name,description,id from the tbl_ticket_categories from that selected id I have to find the user_id from the tbl_ticket_repliers and from that user_id I have to find the username from the tbl_users . 我必须从所选idtbl_ticket_categories选择category name,description,id 。我必须从tbl_ticket_repliers找到user_id ,然后从该user_id我必须从tbl_users找到username

Finally selected attributes should be category_name, description and username . 最后选择的属性应该是category_name, description and username What I am doing my view is :- 我的看法是:

    function editCategory($site_referers_id) {
        $this->db->select('tbl_ticket_categories.category_name,tbl_ticket_categories.description,tbl_users.username,tbl_ticket_repliers.user_id');
        $this->db->where('site_referers_id',$site_referers_id);
        $this->db->join('tbl_ticket_repliers','tbl_ticket_repliers.category_id = tbl_ticket_categories.id');
        $this->db->join('tbl_users','tbl_users.id = tbl_ticket_repliers.user_id');
        return $this->db->get('tbl_ticket_categories');
    }

In my view, when I am doing <?php var_dump($categories); ?> 在我看来,当我做<?php var_dump($categories); ?> <?php var_dump($categories); ?> it showing :- <?php var_dump($categories); ?>它显示:-

object(CI_DB_mysql_result)[32]
  public 'conn_id' => resource(43, mysql link persistent)
  public 'result_id' => resource(81, mysql result)
  public 'result_array' => 
    array
      empty
  public 'result_object' => 
    array
      empty
  public 'custom_result_object' => 
    array
      empty
  public 'current_row' => int 0
  public 'num_rows' => int 1
  public 'row_data' => null

How to do this query :( 如何执行此查询:(

my tables are :- 我的桌子是:-

tbl_ticket_categories(id , category_name , description , site_referers_id)

tbl_ticket_repliers(id , user_id , category_id , site_referer_id)

tbl_users(id , role_id , username , password )

SOLVED 解决了

function editCategory($site_referers_id) {
        $this->db->select('tbl_ticket_categories.category_name,tbl_ticket_categories.description,tbl_users.username,tbl_ticket_repliers.user_id');
        $this->db->where('site_referers_id',$site_referers_id);
        $this->db->join('tbl_ticket_repliers','tbl_ticket_repliers.category_id = tbl_ticket_categories.id');
        $this->db->join('tbl_users','tbl_users.id = tbl_ticket_repliers.user_id');
        return $this->db->get('tbl_ticket_categories')->result_array();
    }

add result_array() above query and print_r() instead of var_dump u see the result 在查询上方添加result_array()并在print_r() instead of var_dump u查看结果

this is correct query, the problem was I wrote result_array instead of result_array() and next time I deleted whole sentence and used var_dump(). 这是正确的查询,问题是我写了result_array而不是result_array(),下一次我删除整个句子并使用var_dump()。

sorry 抱歉

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM