十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
个人理解
创新互联是由多位在大型网络公司、广告设计公司的优秀设计人员和策划人员组成的一个具有丰富经验的团队,其中包括网站策划、网页美工、网站程序员、网页设计师、平面广告设计师、网络营销人员及形象策划。承接:成都网站设计、成都网站建设、网站改版、网页设计制作、网站建设与维护、网络推广、数据库开发,以高性价比制作企业网站、行业门户平台等全方位的服务。
设一字段UP 0为普通 1为置顶
读取的的时候先读取UP为1的数据
然后在读取UP为0的数据
唉,把要置顶的,分开两个层来写,把置顶的内容设置为页的固定内容,先从数据库里查询出置顶的内容,把它放在页的顶端.然后分页的依然分下去,没关系.是不是很简单,呵呵
表结构news: id title content time author description flag
flag作为标记,如果取其中三条数据,则把对应的三条数据的flag设置为1(推荐),默认为0;这样就可以实现取其中的三条数据,剩下的为按时间排序;
取三条:select * from news where flag = 1 limit 3 ;
取剩余的数据 select * from news where flag = 0 order by time desc limit 10;
建议你在tb_topic:中增加一个字段lastreply_time,你可以根据这个来排序,插入回复的时候确实需要增加一个更新语句,但查询时很方便,只要按照这个字段的时间排序就行了
MYSQL中查询表中按字段降序排列的前N条记录模式:
SELECT 字段名[ , 字段名...] FROM 表名 WHERE 条件 LIMIT 数量 ORDER BY 字段名 DESC
例如:
1
select id,name,email from test where age 19 limit 5 order by id desc;
上面例子从test表查询所有age小于19的按id降序排序的前5条记录的id,name,email信息。
LIMIT限制查询数量,ORDER BY指出按什么排序,DESC表示按降序排序。
用union all吧,伪代码如下:
(select * from wenzhang where type='置顶')union all select * from (select * from wenzhang where type!='置顶' order by time) as tmp