[前][次][番号順一覧][スレッド一覧]

mysql:14539

From: HIRATSUKA Sadao <HIRATSUKA Sadao <hiratsuka.sadao@xxxxxxxxxx>>
Date: Thu, 15 May 2008 19:40:08 +0900
Subject: [mysql 14539] Re: PHPの usort() のようなことをしたい

平塚です。

On Thu, 15 May 2008 19:16:50 +0900
"Akikazu Takenaka" <a.p.takenaka@xxxxxxxxxx> wrote:

> ここで、 cat_1st をキーとしてソートしたいのですが、
> 単純に ASC や DESC でソートするのではなく、
> 特定の順番で並べたいと考えています。
> 
> 例: 'P' → 'A' → 'N' → 'C' → ... → 'NO'
> 
> このようなソートを、MySQLだけで実現できるのでしょうか?

5.0でしか試してませんが、
あまり数が多くなければCASE文でできると思います。

mysql>
select * from example order by
case cat_1st
 when 'P' then 1
 when 'A' then 2
 when 'N' then 3
 when 'C' then 4
 else 100
end;

+---------+
| cat_1st |
+---------+
| P       | 
| A       | 
| N       | 
| C       | 
| NO      | 
+---------+
5 rows in set (0.00 sec)

よろしくお願いします。

-- 
平塚貞夫 hiratsuka.sadao@xxxxxxxxxx


[前][次][番号順一覧][スレッド一覧]

     14538 2008-05-15 19:16 ["Akikazu Takenaka" <] PHPの usort()  のようなことをしたい     
->   14539 2008-05-15 19:40 ┣[HIRATSUKA Sadao <hir]                                       
     14540 2008-05-15 20:03 ┣[chuuken kenkou <ken_]                                       
     14542 2008-05-15 23:18 ┗["F.Y" <fumi_sby@xxxx]                                       
     14547 2008-05-16 10:46  ┗["Akikazu Takenaka" <]