Naoki Kurosawa
naoki_kuros****@ybb*****
2003年 4月 18日 (金) 23:34:07 JST
黒澤です。 L> 複数のカラムがあって、ターゲットのカラムでソートする場合で、 L> そのカラムが同じ値だった場合に、次のカラムの大小で L> ソートしたいのですがうまく出来ません。 L> L> order by aaa desc, bbb desc L> っていう記述じゃダメなんでしょうか? あってますよ。 create table test ( aaa int null, bbb int not null, primary key (bbb) ); というテーブルを作って、 insert into test values (5,0),(1,3),(1,2),(1,1); で値を代入し、まず select * from test; とすると、 +-----+-----+ | aaa | bbb | +-----+-----+ | 1 | 1 | | 1 | 2 | | 1 | 3 | | 5 | 0 | +-----+-----+ となります。で、 select * from test order by aaa desc, bbb desc; すると、 +-----+-----+ | aaa | bbb | +-----+-----+ | 5 | 0 | | 1 | 3 | | 1 | 2 | | 1 | 1 | +-----+-----+ と出ます。 もしかして、NULL値を含んだカラムをソートキーに使おうとしてますか? ちょっとうまい例が思いつきませんが、 NULL値を含むカラムをソートキーに使おうとするとうまく並べられないときが あります。 -- Naoki Kurosawa <naoki_kuros****@ybb*****>