在SQL Server中排序 [英] Order By in SQL Server

查看:102
本文介绍了在SQL Server中排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述




我对SQL查询有疑问.我有多个列,其中一列是"Order",值是1,2,3,4,5 ....

现在,每次我要显示3时,我想要的是第一个或最后一个.这个怎么做 .通过使用order by ...语法可以做到这一点

谁能帮我解决这个问题..

在此先感谢

Hi,


I have a doubt on SQL Query. I have a multiple columns in that one of the column is "Order" , values are 1,2,3,4,5....

Now, what i want is on every time i want to display 3 is either first or last. How to do this . By using order by ... syntax is possible to do this

Can any one help me to solve this issue..

Thanks in Advance

推荐答案

使用全部并按
排序
use union all and order by
select order from
(
  select 1 as tempId, order from tbl where order=3
    union all
  select 2 as tempId, order from tbl where order<>3
)
as tbltemp
order by tempid,order


祝您编码愉快!
:)


Happy Coding!
:)


如何使用 Union 运算符.
http://www.w3schools.com/sql/sql_union.asp
How about using Union operator.
http://www.w3schools.com/sql/sql_union.asp


尝试此代码块.

Try this code block.

SELECT [ORDER] FROM (
SELECT CASE WHEN [ORDER] = 3 THEN 0 ELSE 1 END ROWNUM,[ORDER] FROM Orders
)A ORDER BY ROWNUM,[ORDER]



如果要测试此查询,请立即运行以下整个代码块



If you want to test this query then please run the following whole code block at once

WITH Orders AS
(
  SELECT 1 [ORDER]
  UNION ALL
  SELECT [ORDER] + 1 FROM Orders WHERE [ORDER] < 10 
)
 
SELECT [ORDER] FROM (
SELECT CASE WHEN [ORDER] = 3 THEN 0 ELSE 1 END ROWNUM,[ORDER] FROM Orders
)A ORDER BY ROWNUM,[ORDER]



谢谢



Thank you


这篇关于在SQL Server中排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆