みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

【Access】部分一致で不一致データを抽出したい

クエリで2つのテーブルから、不一致データを抽出したいのですが、
完全一致だけでなく部分一致のデータも一致データとして取り除きたいです。

[テーブルA]フィールド1
000-0001
000-0001A
000-0002
000-0003
000-0004

[テーブルB]フィールド2
000-0001
000-0002

というようなデータで、結果は

[結果]
000-0003
000-0004

というふうにしたいです。
(000-0001だけでなく000-0001Aというデータも取り除きたいのです。)

Access初心者で、クエリウィザードを使用した重複データ抽出、不一致データ抽出、
およびクエリデザインを使用した重複データ抽出が何とかできる程度です。

初心者でも分かるようにご回答いただければ大変助かります。
よろしくお願いいたします。

投稿日時 - 2013-08-23 11:03:26

QNo.8231973

困ってます

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

クエリを新規作成して、テーブルA を追加します。
1列目を下記のように設定します。

フィールド フィールド1
表示 レ

2列目は下記のように。

フィールド Exists (SELECT フィールド2 FROM テーブルB WHERE テーブルA.フィールド1 Like "*" & テーブルB.フィールド2 & "*")
表示 □
抽出条件 False

以上でどうでしょう。

投稿日時 - 2013-08-23 23:00:29

ANo.1

Q、部分一致で不一致データを抽出するには?
A、やりたい事を明確に定義することが先かも・・・。

やりたい事:先頭8桁のみの比較でもって・・・。

left(tableA.field1,8) AS x

具体的には、left関数で新たな列を生成します。一番簡単なやり方は、

クエリ1=SELECT left(tableA.field1,8) AS X FROM tableA;

の要領でクエリ1、2を作成し、不一致クエリウィザードを使用して2つのクエリを比較することです。

投稿日時 - 2013-08-23 12:04:31

あなたにオススメの質問