こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

PHP+MySQLで(特殊な)並べ替えをしたい

例えば、ランクSS~Cの値を格納しているカラムで、
SS>S>A>B>C のような順序でソートをかけたいのですが、
カラムの増設をせずに実現できる方法はありますでしょうか。

それともランクで並べ替える用のカラムを
加えなければできないでしょうか。
なるべくなら、純粋なデータのみをDBに格納して
一機能のためだけのフィールドを作るのは
避けたいと思っているのですが。

可否がわかるかたいらっしゃいましたら
お願い致します。

投稿日時 - 2007-02-24 10:47:59

QNo.2779582

すぐに回答ほしいです

質問者が選んだベストアンサー

「order by」で「case」を使う方法があります。

【SQL例】
select name,rank
from t1
order by
case rank when 'SS' then 0
when 'A' then 1
when 'B' then 2
when 'C' then 3
end,
name
;

投稿日時 - 2007-02-24 11:04:27

お礼

ありがとうございます、期待通り動きました!

投稿日時 - 2007-02-24 11:14:57

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問