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

こんにちは、いつもお世話になっています。
アクセス2003の利用方法について、教えてください。

アクセスでクエリを実行→グループ化→実行すると、もとの配列が自動的に昇順に並び替えられてしまいます。

もとの配列を維持しつつ、グループ化したい項目だけグループ化する。。なんてことはできますか?質問がわかりにくいかもしれません。わかりにくいところは補足いたしますので、ご指摘ください。

「(ACCESS)並び替えをしないでグルー」の質問画像

A 回答 (2件)

テーブルに何か連番がないと並びは


確定することができません。

そこで、たとえば、テーブル名をT売上とします。
テーブルにオートナンバー型のフィールドを
一つ追加します。一応、IDという名前にします。
(主キーである必要はありません)

SELECT First(T売上.ID) AS IDの先頭, T売上.品番, Sum(T売上.数量) AS 数量の合計
FROM T売上
GROUP BY T売上.品番
ORDER BY First(T売上.ID);

このようにすれば、並びは確定できます。
    • good
    • 0
この回答へのお礼

ありがとうございました。
できました!

お礼日時:2011/04/06 21:36

質問への念押し。


(1)12050というのはどういうところから選ばれたデータですか
(A)普通はデータの他のフィールドの値で選ばれたりする(例えば販売店や販売日フィールドがあって、靜岡支店の販売商品、4月1日に売れた商品など)
しかし(B)最近欠陥が見つかった商品などというように、このデータ以外の事情で注目され選ばれる場合もある。
(C)本件は2レコード以上あるもの(レコードの前後の数が複数)は合算するように見えるがそうか。(例だけでなく質問に文章で明記のこと。)
(2)もとのデータの並び順を決めているのは、データの値か
それとも発生順(例えば売上日順に入力された)などで、余り意味はないのか
(2)12050など複数出てくるレコードだけ選択して合計し、他の品番のものをそのままとしたいというkとか。
(3)複数のレコードを合算としても、また飛び離れた(行)位置に12050などは出てくるのか。その場合どうするのか。
ーー
ADOなどのレコード処理型のプログラムを使えば出来ると思うがそれではダメか
クエリ(SQL)で実行したいのか。
元の順番を保存しつつ、複数レコードあるものは、GROUP BYでなくて合算し、何かクレリで出したいということか。
レコードの前後重複関係を問題にして、クエリで扱うのは難しそうだが。

この回答への補足

データの並びには規則性があります。
5桁 00000 → 99999 まで昇順に上から並んでいるのですが、
00001→00002→00003・・・というように」順番には並んでおらず、
また、00001→00003→00005というように規則性をもって並んでいるわけでもありません。
とびとびで並んでいるものの、昇順という並び方です。

したがって、ダブりデータの場合、必ず、00012→00013→000013→000014
の00013というように、データが連なります。
また、これらデータは、製品番号です。

今回の件は簡単そうな話だと質問前は考えていましたが、思いの他難しそうであり、
クエリで実行ができなければ、あきらめようと思っています。(当方の力量がついてゆけないため)

補足日時:2011/04/04 22:45
    • good
    • 0
この回答へのお礼

ありがとうございました。
助かりました。

お礼日時:2011/04/06 21:37

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A