关于SQL排序,父条件对应子条件排序

例:

文章列表中显示方式: 

编辑推荐文章  -> 最新文章

 

即:优先显示完编辑推荐的文章,之后在显示最新文章

 

编辑推荐文章按推荐时间排序(最近的时间在前面)

 

最新文章按最新发布时间排序 (最近的时间在前面)

 

即: 编辑推荐文章(推荐时间降序排序) -> 最新文章(发布时间降序排序)

 

每个排序都有子排序,那么,SQL中处理方法:

 

SELECT * FROM table ORDER sort ASC, childSort DESC

 

在表中新增 sort 字段和 childSort 字段

 sort 字段代表“编辑推荐文章  -> 最新文章”的排序,即:1代表推荐文章,2推荐最新文章

 

 childSort 字段中保存了排序编号,代表了 sort 字段的子排序

 

例:

管理员在2012年11月25日推荐“推荐文章1”时,该条数据的 sort字段值为1,childSort字段为20121125

管理员在2012年11月26日推荐“推荐文章2”时,该条数据的 sort字段值为1,childSort字段为20121126

会员在2012年11月27日发布文章“文章3” ,该条数据的 sort字段值为2,childSort字段为20121127

会员在2012年11月28日发布文章“文章4” ,该条数据的 sort字段值为2,childSort字段为20121128

 

查询结果就能实现 : 编辑推荐文章(推荐时间降序排序) -> 最新文章(发布时间降序排序)

结果: 

推荐文章2

推荐文章1

文章4

文章3

转载于:https://www.cnblogs.com/cjnmy36723/archive/2012/11/28/2793116.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值