• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access昇順レコードを、5分割する方法)

Accessで身長順にレコードを5つに分ける方法

このQ&Aのポイント
  • Accessで身長の高い順にテーブルを5つに分け、グループ名を付ける方法を教えてください。
  • 同じ身長の場合でも単純に上からグループ分けします。レコード数は可変です。
  • 名前と身長のデータがあり、レコードを身長の高い順に5つのグループに分けたい場合、どのようにすればよいですか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#182251
noname#182251
回答No.3

クエリーだけで処理するならば ・予め処理状態を現わすフィールドを、身長等のデータが記載されているテーブルに用意しておき 1.更新クエリーで全て未処理にする 2.各グループに配分する数を計算する。仮に5人だとすれば 3.SELECT TOP 5 Str([身長])+Str([ID]) などの形で、身長以外の重複しないことが確実なキーを付加して上位5人を選択する。身長が99センチ以下もある場合は桁あわせに注意 4.これを選択クエリーにして、元テーブルとIDでリレーションを取り、グループ番号と、処理済みを更新する 5.処理済を除く形で3.~4.を繰り返す

applepeach
質問者

お礼

確認が遅くなってすみません。 fuuten_no_nekoさんの方法で、思うようにでき、すっきりしました。ありがとうございました。

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

クエリーの様な単純な形ではできないと思います。 例えば、5人だけのデータでしかも全員が同じ身長である時も、質問文の意図からすると、5つのグループに分けることが必要ですが、これが、単純なクエリーなどではできません。 プログラム的に処理しないとできないと思います。

applepeach
質問者

補足

回答ありがとうございます。 すみません、説明不足でした。 データは、5000~1万件になると思います。 全員が同じ身長ということはないのですが、 5000件時に、100件程度の同じ身長データは 出てきそうです。

noname#49904
noname#49904
回答No.1

あなたがAccessのテーブルでそれをすることはできません。  クエリーで新規作成→選択クエリー→クエリーの元データにテーブル名を指定します。  クエリーを使えば簡単だと思います。分割したいフィールドの抽出条件に数値を入れるだけでできると思います。  クエリーについては勉強してください。

applepeach
質問者

補足

回答ありがとうございます。 クエリは分かるのですが、 どんな条件にすればいいのか、分からなかったのです。

関連するQ&A