类似discuz论坛 最新动态 频道, 数据来自不同数据表,如何按时间排序?
而且有不同类型的数据(帖子、日志、用户动态、应用..)
如何做到按时间排序??
你可以在增加一张表,比如叫action表,表中有动态类型、具体动态对应的id、创造动态的用户id、创造动态的时间。
然后你第一步是按时间排序查询这个action表,然后通过动态类型、具体动态对应的id再去查找其他表的。比如动态类型是帖子,你就根据帖子id(也就是动态对应的id字段)去获取帖子的相关数据。这样把不同类型的数据都查询出来后,拼接数据就好了。
大概就是这样了,最简单的方式是你去看discuz源代码。
http://www.oschina.net/question/12_70587这里还有个参考的文章,基本思路差不多。
你可以在增加一张表,比如叫action表,表中有动态类型、具体动态对应的id、创造动态的用户id、创造动态的时间。
然后你第一步是按时间排序查询这个action表,然后通过动态类型、具体动态对应的id再去查找其他表的。比如动态类型是帖子,你就根据帖子id(也就是动态对应的id字段)去获取帖子的相关数据。这样把不同类型的数据都查询出来后,拼接数据就好了。
大概就是这样了,最简单的方式是你去看discuz源代码。
http://www.oschina.net/question/12_70587这里还有个参考的文章,基本思路差不多。