プロが教える店舗&オフィスのセキュリティ対策術

以下のようなテーブル(てすと)があったとします。
  (列)
 AAA-2999 … (1)
 BBB-4999 … (2)
 CCC-3999 … (3)
 DDD-1999 … (4)

クエリ:SELECT 列 FROM てすと (ORDER BY ???)
結 果:(4)・(1)・(3)・(2)

このテーブルを"-"以降で昇順にソートしたいのですが、ORDER BY句を用いてできるのでしょうか?

A 回答 (2件)

DBの種類が分からないのでオラクルだと仮定すると


SELECT 列 FROM てすと ORDER BY SUBSTR(列, 5, 4)
でできます。

アクセスなら SUBSTR を MID に変えるだけでOK。
    • good
    • 0
この回答へのお礼

DBの種類はSQLサーバです!
"-"以前の文字数は決まっていて、以降の文字数が決まっていないので、

SUBSTR(列,5,LEN(列)-4)

のように、LEN関数を用いて"-"以降の文字数を求めて
期待通りにソートしてくれました。
ありがとうございましたm(__)m

お礼日時:2003/02/13 09:52

SQL2000だったらSUBSTRING関数とか使えば出来るかもしれませんよ! 詳しくはHELPで見てください!

    • good
    • 0
この回答へのお礼

できました!
ありがとうございましたm(__)m
SUBSTRING関数の存在を初めて知りました(^。^;
勉強不足ですね…。
お世話になりました。

お礼日時:2003/02/13 09:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!