2014-12-04 37 views
-1

我使用笨,我有一个表,如下所示:集团类似饲料项目登录

+----+-------+------+-----------+--------------+ 
| id | user | post | action | added  | 
+----+-------+------+-----------+--------------+ 
| 1 | ann | 1 | commented | <date added> | 
| 2 | sarah | 1 | commented | <date added> | 
| 3 | carol | 1 | liked  | <date added> | 
| 4 | susan | 1 | commented | <date added> | 
| 5 | derek | 2 | liked  | <date added> | 
| 6 | ann | 1 | liked  | <date added> | 
+----+-------+------+-----------+--------------+ 

在活动进我所有的帖子输出基于时间。最近的第一个。

安喜欢交1 德里克喜欢交2 苏珊评论后1 卡罗尔喜欢交1 萨拉在后评论1 安在后1

评价是如何的最佳办法,这些通过活动在一个职位? 例如。

安及另外1人喜欢交1 德里克喜欢交2 苏珊和其他2人后评论1

我是最好的,从数据库中获取所有的信息和之前在排序由PHP页面加载?或者我在查询中执行某种GroupBy?

TIA。

回答

0

我不是codeigniter的专家,但使用原始的sql查询,你可以很容易地做到这一点。试试这个:

$query = "SELECT * FROM activity_feed_table_name GROUP BY post"; 

我在检查codeigniter文档和它的活动记录实现支持groupBy子句。

$this->db->get('yourActivityFeedTable');->group_by("post"); 

我没有使用CI在相当长一段时间,所以我不记得确切的语法,但这个可能让你在正确的轨道上。让我们知道它是否有效!