- 注册时间
- 2006-12-30
- 最后登录
- 2009-9-29
- 阅读权限
- 1
- 积分
- 4227
- 精华
- 7
- 帖子
- 673
|
对于论坛后台编程问题我不是太清楚,不过网上有人讨论过,可以参考一下!
论坛帖子排序问题
悬赏分:0 - 解决时间:2006-11-16 17:39
论坛发表帖子的话,最后发表的排在最上面,然后回复的帖子能把下面的帖子顶上去,帖子排序是按照什么方法?
如果按照发表帖子的时间的话,最后发表的永远在上面了,如果按照回复时间的话,最后发表的帖子将会排在最后了?
我数据库建了两个时间字段:发表时间,最后回复时间...
是不是设置一个字段比较合适
提问者: 逍遥¢酷酷 - 见习魔法师 二级
最佳答案
不用新建字段
首先要2个表,主贴表post和回复表repost,然后主贴表与回复表是1对多的关系,回复表也要保存回复日期
再建立查询,连接两个表,在数据库的SQL视图中加入:
Max(IIf([repost]![date] Is Not Null,[repost]![date],[hide]![date])) AS newupdate
解释下,如果某数据有回复,那么就选最近的回复日期做为newupdate的值,否则就选发贴日期作为newupdate的值,所以数据的排序以newupdate来排的
不过在写的时候,依然要写成
ORDER BY Max(IIf([reply]![date] Is Not Null,[reply]![date],[hide]![date])) DESC;
在数据库的查询里写,ASP直接用查询,减少页面代码 |
|
[fly][glow=298,black,39]說到吥如做到,要做就做更好,祝大家步步高![/glow][/fly]
Mobile:1315952214X
Progress 1%/Day !
|