id,id2是两个字段吧?select * from table where id = 4 union all select * from table where id <> 4 order by id2 desc
这个应该可以,不过用到了临时表 SELECT * INTO #T FROM TABLE WHERE ID = 4 ORDER BY ID2 DESC INSERT INTO #T SELECT * FROM TABLE WHERE ID <> 4 ORDER BY ID2 DESC SELECT * FROM #T DROP TABLE #T
id,id2是两个字段 to dawugui(潇洒老乌龟) 不对,我的意思是想id=4的排在最前面,然后按id2的倒排
--在SQL Server下--ID=4的排在最前边,ID<>4的按照ID2降序排列 select * from 表名 order by case when id=4 then 0 else 1 end ,id2 desc
id,id2是两个字段 to dawugui(潇洒老乌龟) 不对,我的意思是想id=4的排在最前面,然后按id2的倒排--为什么不对啊
--try select * from 表名 order by case when id=4 then 800000 else 0 end ,id2 desc 800000不够大的话,在加大!呵呵
select * from table where id=4 order by id2 desc
order by case id when 4 then 0 else 1 end ,id2 desc
union all
select * from table where id <> 4 order by id2 desc
SELECT * INTO #T FROM TABLE WHERE ID = 4 ORDER BY ID2 DESC
INSERT INTO #T SELECT * FROM TABLE WHERE ID <> 4 ORDER BY ID2 DESC
SELECT * FROM #T
DROP TABLE #T
to dawugui(潇洒老乌龟) 不对,我的意思是想id=4的排在最前面,然后按id2的倒排
select *
from 表名
order by case when id=4 then 0 else 1 end ,id2 desc
to dawugui(潇洒老乌龟) 不对,我的意思是想id=4的排在最前面,然后按id2的倒排--为什么不对啊
select *
from 表名
order by case when id=4 then 800000 else 0 end ,id2 desc
800000不够大的话,在加大!呵呵