0

一般来说,我对编码相对较新,一年级的 CS 学生等等。我正在使用 PHP 显示学校课程类别列表和每个类别中的作业帖子列表。所需的输出将是这样的:

CATEGORY 1
-Assign Post 1
-Assign Post 2

CATEGORY 2
-Assign Post 0

使用 join 为我提供了部分功能,因为它获取所有分配的帖子,但是当我循环并发布数据时,它不止一次发布类别标题。然后我尝试使用 group_by ,但每个类别只发布一篇文章。

我不会发布我所有的代码,只是发布数据库查询。如果您认为问题可能存在,我会很乐意发布其他代码。

//Select our classes, and get assignments from each class
$this->db->select('*');
$this->db->from('categories');
$this->db->join('assignments', 'categories.cat_id = assignments.assign_cat_id');
$this->db->group_by("cat_id"); 

//Return the classes and assignments in an array
$query = $this->db->get();
return $query->result_array();

不会很棘手吧?当然感谢任何帮助:)。

更新

我发现 group_concat 将发布分配名称,然后我可以分解结果。这是唯一的方法,还是有办法让它在一个友好的数组中发布。我问的唯一原因是我觉得这在我的视图文件中添加了不必要的代码,我正在爆炸数据。

谢谢!

4

1 回答 1

0

不要使用 group by ...使用按类别 id 排序,在显示/或准备数据数组时,您可以根据类别记录记录..您无法通过单个 SQL 来实现这一点

于 2012-05-31T04:43:32.760 回答