2012-02-19 150 views
-1

我有一个代码,它必须从两个单独的表中返回连接的数据。Codeigniter活动记录连接函数只返回一个结果

$this->db->select('product.name,category.name'); 
$this->db->from('product'); 
$this->db->join('category','product.cat=category.id'); 
$this->db->group_by('product.name, category.name'); 
$query=$this->db->get(); 

但代码只返回产品表中的一列数据。 我试过SQL查询过

select * from `product` join `category` where product.cat=category.id 

CI中这是行不通的,但在phpMyAdmin和Sequel Pro的SQL终端它的工作原理。 你能帮我吗?

+1

您是否试过echo $ this-> db-> last_query();看它实际运行的是什么,并将其与您在PHPMyAdmin和Sequel Pro中手动测试的内容进行比较? – 2012-02-19 20:59:28

+0

是的,我试过这个,它会像这样返回sql SELECT'product'.'name','category'.'name' FROM('product')RIGHT JOIN'category' ON'product'.'cat' =' category'.'id' ORDER BY'product'.'name','category'.'name' and this query works in PHPMyAdmin – ikajava 2012-02-19 21:07:52

+0

RIGHT join?在您的查询中我看不到正确的内容! – uzsolt 2012-02-20 07:53:22

回答

1

你的小组没有真正有意义。你的意思是使用order_by

$this->db->order_by('product.name, category.name');

+0

是的,我的意思是,但它不管用。 – ikajava 2012-02-19 21:00:59