codeigniter查询控制器视图

时间:2012-07-30 08:51:57

标签: php mysql sql codeigniter

我有两张桌子: - tbl_ticket_categories(id,category_name,site_referer)

tbl_tickets(id,title,category_name,site_referer)

我必须从其相应category_name的tbl_tickets获取所有title_referer = 1的所有头衔。

假设tbl_ticket_categories: -

id | category | site_referer
1  | cat1     | 1
2  | cat2     | 1
3  | cat1     | 2
4  | cat3     | 3
5  | cat1     | 1

tbl_tickets

id | title  | category_name | site_referer
1  | title1 | cat3          | 3 
2  | title2 | cat1          | 2
3  | title3 | cat1          | 1
4  | title4 | cat2          | 1
5  | title5 | cat1          | 1

输出: - cat1: - title3,title5

cat2: - 标题4

我在查询时没有问题,但我不知道如何安排,我在控制器部分的逻辑出错了。

我这样做是: -

function categorizedTickets() {
    $categories = $this->helpdesk_model->getCategories($this->site_referers_id);
    foreach($categories->result_array() as $value) {            
        $title = $this->helpdesk->model($value['category_name']);
    }
}

但是这个函数对于以我应该做的方式显示输出没有用。

1 个答案:

答案 0 :(得分:2)

SELECT tbl_ticket_categories.category, CONCAT(tbl_tickets.title, ', ') AS title
FROM tbl_ticket_categories
     JOIN tbl_tickets ON tbl_ticket_categories.category = tbl_tickets.category_name
WHERE tbl_ticket_categories.site_referer = ?

...不要使用Active Record - 它不起作用。