プロが教えるわが家の防犯対策術!

 以下の様なレコード(実際は他にもデータがあります)があります。必要な部分のみを抽出しています。
 事業所名と職種名が同じものですから、整理番号が最大のものを残して、ほかは削除したいのですが、思うように重複レコードの削除ができません。ご教授ください。

 整理番号 事業所名 職種名
 20110001 ○○○○ △△△
 20120001 ○○○○ △△△
 20130001 ○○○○ △△△ ←このデータを残したいのですが・・・

よろしくお願いします。

A 回答 (4件)

できると思います。



クエリをSQLビューで表示させると、

SELECT Max(テーブル1.整理番号) AS 整理番号の最大, テーブル1.事業所名, テーブル1.職種名
FROM テーブル1
GROUP BY テーブル1.事業所名, テーブル1.職種名;

このようになっているはずです。
「Access vbaで重複レコードの削除」の回答画像4
    • good
    • 1
この回答へのお礼

早速の御返事ありがとうござしました。私のやり方が間違っていたのですね。できることが分かって安心しました。画像つきで送って下さり、誠にありがとうございました。多謝!

お礼日時:2013/10/01 16:16

整理番号を選択に変える⇒整理番号を最大にかえる


でした。 スミマセン。
    • good
    • 0
この回答へのお礼

ShowMeHowさん、何度もありがとうございます。回答No.1のお礼欄に書きましたが、同一レコードのグループが複数あり、「最大」がうまく働いてくれないようです。それぞれのグループ内の「最大」とはならないのでしょうか?
整理番号 事業所名 職種名
20080001 ○○病院 看護師
20110001 ○○病院 看護師
20120001 ○○病院 看護師 ←これを残す
20090012 △△商事 事務職
20100012 △△商事 事務職
20130012 △△商事 事務職 ←これを残す
 以上のようなデータでも成功するのでしょうか?
何度もすみません。

お礼日時:2013/10/01 15:54

選択クエリで



・整理番号、事業社名、職種名を表示させ、
・デザインビューで右クリック、集計を選択して、
・整理番号を選択に変える

それをテーブル作成クエリに変えれば、テーブルを作ることもできます。

参考URL:http://www.mahoutsukaino.com/ac/ac97/basic/s_que …
「Access vbaで重複レコードの削除」の回答画像2
    • good
    • 0

グループ化して、整理番号が最大のものだけを書き出すと、同じ結果が得られます。


元のテーブル名にしたいなら、仮テーブルに出力した後、データを削除して
仮テーブルより書き戻せばよいと思います。

この回答への補足

すみません。グループ化の具体的な方法を教えていただければ幸いです。初心者ですので…

補足日時:2013/10/01 13:31
    • good
    • 0
この回答へのお礼

 遅くなりましたが、ご回答有難うございました。ネットで調べてグループ化をして実行してみましたが、質問の仕方が悪かったので、思うような結果が出ませんでした。

 もう少し詳しく書きますと、

整理番号 事業所名 職種名
20080001 ○○病院 看護師
20110001 ○○病院 看護師
20120001 ○○病院 看護師 ←これを残したい。
20090012 △△商事 事務職
20100012 △△商事 事務職
20130012 △△商事 事務職 ←これを残したい。

 上記のように同じようなものが複数あるのです。それぞれに整理番号が最大のものを残したいのです。説明不足で申し訳ございませんでした。

 よろしくお願いします。

お礼日時:2013/10/01 14:57

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

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


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