2

値を含むテーブルがあり、すべてを選択して別の順序で表示しようとしています。

表示順序を定義するために別の列を追加したくありません。

どうやってやるの..

ケースの使用について読みました。

しかし、私は成功していません。誰かがこれを手伝ってくれることを願っています。

ここに私の試しているコードがあります:

私のテーブルは次のようになります。

 1 -- a
 2 -- b
 3 -- bgin
 4 -- mid 
 5 -- c
 6 -- d

そして、私が望んでいる私の結果はこれです:

 1 -- bgin
 2 -- a
 3 -- b
 4 -- c 
 5 -- d
 6 -- mid


Select Name From tbl
GROUP BY Name
ORDER BY 
CASE WHEN Name = 'Bgin' THEN 0 END, Name,
CASE WHEN Name= 'Mid' THEN 5 END, Name
4

1 に答える 1

4

これを試して:

Select Name From tbl
GROUP BY Name
ORDER BY 
CASE WHEN Name = 'Bgin' THEN 0
     WHEN Name = 'Mid' THEN 5
     WHEN Name <> 'Mid' AND Name <> 'Bgin' THEN 1 END, Name

sqlfiddle demo

于 2013-11-11T14:59:14.877 に答える