

Accessを勉強中です。
入力したデータ(テキストファイルのインポート)の重複除去として、
クエリに登録したデータフィールドすべてに対し、GroupByを実施しております(合計とか、平均とかは選択していない、単純に GroupBy)。
その一方で、最近、DISTINCTROW、DISTINCTを知りました。
DISTINCTROW ---クエリのプロパティで「固有のレコード」Yes
DISTINCT-------クエリのプロパティで「固有の値」Yes
DISTINCTROW、DISTINCTも、クエリのデータフィールドに登録した
ものだけの話であろうと、考えているのですが、明確には理解できていません。 特に「固有のレコード」とは、何をいっているのか、分かりません。分かりやすく解説していただけないでしょうか?
また、データの重複を除去する方法としてのDISTINCTROW、DISTINCTは、
一般的な方法なのでしょうか?
以上、宜しくお願いいたします。
No.1ベストアンサー
- 回答日時:
この回答への補足
早速の回答ありがとうございます。
DISTINCTに関しては、大方、理解できていると思います。
即ち、Selectの結果として得られた、全く同じ行を省くもの。
つまり、目で見える結果の明らかな、重複を省くというもの。
しかし、DISTINCTROWに関しては、よく分からない・・・
基本的に、データベースに取り込む時に、主キーが自動的に
割り振られ、レコードとして絶対に重複しないようななっているのが
データベースだと思います。
http://makotowatana.ld.infoseek.co.jp/access/das …
でも、「フィールドの重複のみでなく、レコード全体で重複しているデータを除外します。」と書かれています。もうこの段階で、理解できません。
意図的に、同じレコードを10行データベースに取り込みました(tab delimita のテキストファイルをimport)。
取り込んだ時点で、Accessは勝手に、IDなるものを付与し、レコードとしては、10行、別々の物となっています(Tableで見る上では)。
このテーブルに対し、ID以外の全fieldをクエリに登録し、DISTINCTROWを実施しても、10行が表示されます(目で見えるのは、全く10行とも同じ内容です)。DISTINCTROWではなく、DISTINCTを実施すると、1行だけとなります。
つまるところ、下記の記述が理解できないのです。
「DISTINCTROW 述語は、クエリで使用するすべてのテーブルからではなく、一部のテーブルからフィールドを選択した場合のみ有効です。このため、クエリの中にテーブルが 1 つのみしかない場合、またはすべてのテーブルからフィールドを出力する場合は、DISTINCTROW 述語は無視されます。」
仮に、そうだ、そうだとして、その時、DISTINCTとDISTINCTROWの違いは何なのか? と言う疑問が出てきてしまいます。
宜しくお願いいたします。
教えていただいたサイトでの情報から、更に1歩進むことができ、
本件、解決しました。DISTINCTROWは、「もし、レコード全体を裏で見て
それが重複していないのであれば、目の前のクエリの結果が、一見、重複していたとしても、重複を許して、そのまま表示する」と言うものなのですね。 これが、DISTINCTだと、とにかく重複していれば、消す。有無を言わさず消す。
また、宜しくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS クエリで重複データを最...
-
追加先の発見方法(SQL以外)
-
ACCESS クエリー 抽出条件が...
-
AccessでのDISTINCTROW 、DISTI...
-
ACCESSでクエリを作成したら「...
-
アクセス:フォームを閉じずに...
-
Formからの複数選択抽出条件に...
-
アクセスのフォームのビューが...
-
テーブルに主キーを作らないデ...
-
Accessのフォームで作業領域を...
-
ACCESS レポートへの表示・非表示
-
Access 2010 土日祝日を除いて...
-
Access 別フォームへの再クエ...
-
Accessのフォームに表示...
-
アクセスでの項目追加について...
-
ACCESSを開くと最初にフォーム...
-
access で「指定したフィール...
-
宛名作成(Word)の郵便番号が...
-
アクセスでテーブルの変更内容...
-
Access2002 フォームを閉じるた...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS クエリで重複データを最...
-
ACCESSでクエリを作成したら「...
-
「データベースまたはオブジェ...
-
マイクロソフトAccessでsqlのas...
-
追加先の発見方法(SQL以外)
-
SQLについて質問です。 下記の...
-
access・カウント結果がゼロで...
-
ACCESSでデータ削除すると「読...
-
ACCESS のクエリー実行に異常に...
-
ACCESS クエリー 抽出条件が...
-
accessで選択クエリで得た全レ...
-
SQLです教えてくださいお願いし...
-
ACCESSにてフィールド間の最小...
-
ACCESS クエリで、グループ化...
-
アクセスでフォームが更新でき...
-
ユニオンクエリについて
-
SqlServer2012 ビューとクエリ
-
クエリで「データ型が一致しま...
-
SQLで優先順位が高いレコードを...
-
AccessでのDISTINCTROW 、DISTI...
おすすめ情報