• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Accessでの電話番号重複チェック)

Accessでの電話番号重複チェック

このQ&Aのポイント
  • Accessを使用して10万件の顧客データ中の電話番号の重複をチェックしたい。Excelでは処理が遅くなるため、Accessを使用することにしたが、使い方がわからず困っている。
  • 重複クエリを使用して電話番号(1)と(2)(3)の重複は抽出できたが、(2)が(3)と重複しているデータの抽出方法や、(1)同士・(2)同士・(3)同士の重複データの抽出方法がわからない。
  • 抽出する方法があるかどうか教えてほしい。

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

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.2

> 「クエリ1」という名前で保存するところまでは行きました。 ごめんなさい。少しわかりにくくなるので、[クエリ1]を呼ぶ[クエリ2]を作成してください。 1)[クエリ1]のみを参照する新規クエリを作成する。 2)[電話番号]と[ID]を参照させる。 3)ACCESS2003までの場合、メニューの[表示]にある[集計]を選択する。   ACCESSが2007の場合、[ホーム]>[レコード]にある[集計]を選択する。 4)「集計行」が追加されるので、[電話番号]では「グループ化」を、[ID]では「カウント」を選択。 5)さらに[ID]の「抽出条件」には >1 を設定する。 これで[クエリ2]を実行すると、2件以上(1を越える)電話番号のみが表示されます。 デザインビューをSQLビューで表示させたときに5)の部分が having count(*)>1 と表示されます。

aloe_bear
質問者

お礼

ありがとうございます! 教えていただいたやり方で確認できました! 結構あてかたがわからず最後は手で検索してしまいましたが、助かりました! ありがとうございます!

その他の回答 (1)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

1)以下の3つのクエリを作成する。   [ID][電話番号(1)]   [ID][電話番号(2)]   [ID][電話番号(3)] 2)上記の3クエリをunion allする。 3)2)のクエリを元に、電話番号重複を検出する(having count(*)>1) 4)2)と3)を用いて重複する電話番号を持つIDを拾う でどうでしょう?

aloe_bear
質問者

お礼

bin-chan様 ご回答ありがとうございます。 Accessは全く初心者なのですが、調べながらどうにか [ID][電話番号(1)]⇒TEL1 [ID][電話番号(2)]⇒TEL2 [ID][電話番号(3)]⇒TEL3 というクエリ名で作成し、 SELECT * FROM TEL1 UNION ALL SELECT * FROM TEL2 UNION ALL SELECT * FROM TEL3; をユニオンクエリに突っ込んで、「クエリ1」という名前で保存するところまでは行きました。 ところがその後のhaving count(*)>1の使いかたが調べても出てきません…… お手数をおかけして大変申し訳ないのですが、ヒントだけでも頂けないでしょうか。

aloe_bear
質問者

補足

SELECT 電話番号(1), COUNT(*) FROM クエリ1 GROUP BY 電話番号(1) HAVING COUNT(*)>1; とやったらできたようです。 ありがとうございました! あとはこれでIDを拾いに行って見ます。 これも分かりませんが、調べてみます!

関連するQ&A