当读取数据库时候就先根据该项首先读取,放在1楼
然后再按原来代码读取其他
当然还有其他细节,我的思路就是这样的
我就是这样做的
我是用php+mysql写的一个
PS:
也就是修改数据库增加一个数据"列",专门记录是否置顶
读取的时候首先写代码判断该列是否有置顶标记了的"行"。如果有,就先读取该行,然后按顺序读取,等再次读取到该行时候跳过;若果没有就按顺序读取。
下面提供一个栗子给大家尝尝:
将下个月到期的保单排在前面
-- 创建测试表
create table if not exists 保单(保单号 varchar(10) primary key, 到期日 date)
-- 清空及插入测试数据
delete from 保单
insert into 保单 values
('001','2016-02-01'),
('002','2016-03-01'),
('003','2018-09-01'),
('004','2018-12-15'),
('005','2017-08-09'),
('006','2017-08-26')
-- 查看未排序前的情况
select * from 保单
-- 强制排序,将下个月到期的保单排在最前面
select * from 保单 order by case when
date_format(到期日,'%Y%m')=
date_format(date_add(now(),interval 1 month),'%Y%m')
then 0 else 1 end
运行效果请见附图
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)