按两列排序,更改排序顺序

时间:2014-02-24 19:37:10

标签: sql toad

我有一张看起来像这样的表

ID  Side    Name    
--  ---    -------
1   Left   Bravo
1   Right  Alpha
2   Left   Delta
2   Right  Charlie
3   Left   Fox
3   Right  Echo

我需要Table看起来像这样,它对ID列和Side列进行排序,但是Side列被排序为Right,然后是Left

ID  Side    Name    
--  ---    -------
 1   Right   Alpha
 1   Left    Bravo
 2   Right   Charlie
 2   Left    Delta
 3   Right   Echo
 3   Left    Fox

我尝试过使用order by ID,Side DESC& ASC但查询结果不会更改

2 个答案:

答案 0 :(得分:2)

很难从结果集中猜出你需要什么。

 ORDER BY Name

将产生您想要的结果。 http://sqlfiddle.com/#!2/ceb736/1/0

 ORDER BY ID ASC, Side DESC

也应该这样做。 http://sqlfiddle.com/#!2/ceb736/2/0

答案 1 :(得分:1)

您可以将CASE用于侧栏

SELECT * FROM table 
ORDER BY id ASC,
CASE WHEN `side` ='Right' THEN 1 ELSE 2 END

Fiddle Demo