dポイントプレゼントキャンペーン実施中!

下記のようなデータがあります。
町名ごとに 0 ~ >=110 の男女別のデータが890,000レコードあります。
エクセルだと、町名ごとに 0 から >=110 まで問題なく並び替えができるのにアクセスでは思うようにできません。
年齢に昇順をかけても、全ての町名が入り混じって >=110,0,1…の順になってしまいます。
町名ごとに 0 ~ >=110 まで綺麗に並び替えることは可能でしょうか?
どなたか教えてください。よろしくお願いいたします。

No.   コード   町名   年齢 男 女
1   012233  下野本   2  23 36
2   012233  下野本   5  12 18
3   012233  下野本   100 18 20
4   012233  下野本 >=101  1  0

120 012233  上青木   8  23 36
121 012233  下青木   15 12 18
123 012233  下青木   100 18 20
124 012233  下青木 >=101  1  0

A 回答 (3件)

SQLを以下のように書き換えます。



SELECT [No],コード,町名.年齢,男,女
FROM テーブル
ORDER BY 町名,IIf(年齢=">=101",101,Val(年齢))

この回答への補足

すごいです!!
SQLを書き直したら簡単にできました。
ただ、>=110がどうしても0の上に来てしまうので、構文を良く見たら…わかりました!!
>=101を>=110にすれば良いのですね。
本当にありがとうございました。
これを機会にSQLも勉強したいと思います。
また、よろしくお願いいたします。

補足日時:2012/02/10 10:06
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
SQLですね。今日はもう帰りますが、明日早速やってみます。
いろんな手を尽くさなくても一度にできるんですね。
ありがとうございました。
また、よろしくお願いいたします。

お礼日時:2012/02/09 20:08

おっと、101歳以上のことを考えていなかった。


数値型の別フィールドをつくり、101以上を999とでも置き換えてそれ順にならべるとか。
    • good
    • 0
この回答へのお礼

おぉぉ、できました !!
ありがとうございます。
テキスト型になっていたので、並ばなかったんですね。
安心して帰れます !! お疲れ様でした !!

お礼日時:2012/02/09 20:03

フィールドのデータ型を数値にしてください。

    • good
    • 0

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