求SQL查询语句
表A有以下数据:
Id Name DateTime
1 张三 2010-03-15
2 李四 2010-03-19
3 王五 2010-03-16
4 马六 2010-03-14
5 赵七 2010-03-18现在我的需求是,前两条记录保持不变,当我修改下面的时间时,按照降序排列
需要得到下面的结果,前两条要一直在上面
Id Name DateTime
2 李四 2010-03-19
5 赵七 2010-03-18
4 马六 2010-03-20 只改变后数据的排列
3 王五 2010-03-16
1 张三 2010-03-15不知小弟有没有说清楚,请高手帮帮忙。谢谢了!!!
表A有以下数据:
Id Name DateTime
1 张三 2010-03-15
2 李四 2010-03-19
3 王五 2010-03-16
4 马六 2010-03-14
5 赵七 2010-03-18现在我的需求是,前两条记录保持不变,当我修改下面的时间时,按照降序排列
需要得到下面的结果,前两条要一直在上面
Id Name DateTime
2 李四 2010-03-19
5 赵七 2010-03-18
4 马六 2010-03-20 只改变后数据的排列
3 王五 2010-03-16
1 张三 2010-03-15不知小弟有没有说清楚,请高手帮帮忙。谢谢了!!!
declare @tb table([Id] int,[Name] varchar(4),[DateTime] datetime)
insert @tb
select 1,'张三','2010-03-15' union all
select 2,'李四','2010-03-19' union all
select 3,'王五','2010-03-16' union all
select 4,'马六','2010-03-14' union all
select 5,'赵七','2010-03-18'select * from @tb order by charindex(Name ,'赵七,李四') desc,DateTime desc
/*
Id Name DateTime
----------- ---- -----------------------
2 李四 2010-03-19 00:00:00.000
5 赵七 2010-03-18 00:00:00.000
3 王五 2010-03-16 00:00:00.000
1 张三 2010-03-15 00:00:00.000
4 马六 2010-03-14 00:00:00.000(5 行受影响)*/
declare @tb table([Id] int,[Name] varchar(4),[DateTime] datetime)
insert @tb
select 1,'张三','2010-03-15' union all
select 2,'李四','2010-03-19' union all
select 3,'王五','2010-03-20' union all
select 4,'马六','2010-03-14' union all
select 5,'赵七','2010-03-18'select * from @tb order by charindex(Name ,'赵七,李四') desc,DateTime desc=======
(5 行受影响)
Id Name DateTime
----------- ---- -----------------------
2 李四 2010-03-19 00:00:00.000
5 赵七 2010-03-18 00:00:00.000
3 王五 2010-03-20 00:00:00.000
1 张三 2010-03-15 00:00:00.000
4 马六 2010-03-14 00:00:00.000(5 行受影响)