Php 聚集一组通知

Php 聚集一组通知,php,mysql,notifications,grouping,Php,Mysql,Notifications,Grouping,我有一张通知表格: +----+------+--------+--------+------------+ | ID | User | Object | Action | TimeStamp | +----+------+--------+--------+------------+ | 1 | 1 | 3 | Like | 2014-05-01 | | 2 | 2 | 3 | Like | 2014-05-01 | | 3 | 3 |

我有一张
通知
表格:

+----+------+--------+--------+------------+
| ID | User | Object | Action | TimeStamp  |
+----+------+--------+--------+------------+
|  1 |    1 |      3 | Like   | 2014-05-01 |
|  2 |    2 |      3 | Like   | 2014-05-01 |
|  3 |    3 |      3 | Like   | 2014-05-01 |
|  4 |    3 |      5 | Share  | 2014-05-01 |
+----+------+--------+--------+------------+
如果您可以看到,用户
1
2
3
都喜欢相同的对象
3
。在通知窗口中,如果我们只给出一个简单的
SELECT
查询,它显示如下:

  • 用户
    1
    喜欢对象
    3
    。2分钟前
  • 用户
    2
    喜欢对象
    3
    。2分钟前
  • 用户
    3
    喜欢对象
    3
    。2分钟前
  • 用户
    3
    拥有共享对象
    5
    。2分钟前
但由于操作是在同一个对象上完成的,因此我希望将通知按如下方式组合或分组:

  • 用户
    1
    2
    3
    喜欢对象
    3
    。2分钟前
  • 用户
    3
    拥有共享对象
    5
    。2分钟前
我有以下问题:

  • 如何对通知进行分组/组合
  • 我的
    通知
    表架构是否正确

  • 如果在中间有一个<代码>共享< /代码>,这是不起作用的!
    select object, action, group_concat(`user`) as users
    from notifications
    group by object, action