2017-11-07 6 views
2

私は、Webページ上に垂直のチェックボックスリストを生成するために使用している100行のルックアップテーブルを持っています。結果を得ることは非常に単純なクエリ:ORDER BYの上にある特定の結果を使用してSQL ORDER BY列を昇順に変換する方法はありますか?

SELECT servicetype FROM XXX 

私はORDER BY列にする方法があるかどうかを知りたいが、特定の既知の値は、ソートのうち、リストの上部に表示されていますか? (そして私もこの擬似コードを書きますが...方法がわからない)のようなもの

SELECT servicetype FROM XXX 
ORDER BY servicetype ASC 
WITH servicetype IN ('Personal', 'Juggling') ON TOP 

私のリストのようなものになりますように:助けを

Juggling   - On top regardless of ORDER BY 
Personal   - On top regardless of ORDER BY 
Anteating  - Everything else is ORDER BY 
Barflying 
Beafeating 
Carswatting 
etc... 

感謝を!

あなたが使用することができ
+1

'場合によってオーダーサービス種別= '個人' やサービス種別= 'ジャグリング' を他の1 2 end' – Simon

答えて

5

SELECT servicetype FROM XXX 
ORDER BY 
    CASE WHEN servicetype IN ('Personal', 'Juggling') THEN 0 ELSE 1 END ASC 
    , servicetype ASC 
4
SELECT servicetype 
FROM XXX 
order by case when servicetype = 'Juggling' then 'a' 
       when servicetype = 'Personal' then 'b' 
       else servicetype 
     end 
+0

サービス種別= 'ABC' :)十分 – lad2025

+0

フェア@ lad2025しかし、それはサンプルデータから非常に予期せぬことです。 – scsimon

関連する問題