No.4
- 回答日時:
>一方を削除したいのですが
テーブルAからテーブルBに含まれるものを消したい
delete from A where EXISTS (select * from B where B.キー項目 = A.キー項目)
>そもそも、重複となるデータを除いて、
>2つのテーブルをひとつにする方法
insert into A select * from B
where NOT EXISTS (select * from A where A.キー項目 = B.キー項目)
accessの環境が無いので参考程度で。
回答ありがとうございます。
(回答メール届かなかったので、
遅れてしまいました。)
自分でもいろいろ考えましたが、
経験者の意見は、非常に参考になります。
2つのSQL両方試してみたいと思います。
勉強になりました。
ありがとうございました。
No.3
- 回答日時:
#2です。
あ、テーブルの作成方法ではなくて、もう出来たテーブルから重複したデータの削除ですね(^-^;)
まずは、新しく作成したテーブル(重複したデータがあるテーブル)に
キーとなる列を追加する必要があると思います。
(名前はIDとかでオートナンバー型でいいと思います)
そして、
DELETE * FROM ABCテーブル
WHERE ID IN
(SELECT MAX(ID) FROM ABCテーブル GROUP BY ID以外の列を指定 HAVING COUNT(*) > 1);
っで、いけると思います。
最後に追加した列(ID)を削除する。
念のため、重複行がないか確認してください。
回答ありがとうございます。
(回答メール届かなかったので、
遅れてしまいました。)
テーブルの作成でも、間に合います。
No2の方法は、Accessならではで、
やってみようと思います。
No3のSQLも意味をよく理解してから、
やってみたいと思います。
どうもありがとうございました。
No.2
- 回答日時:
DBとデータ量によって、やり方は違ってくると思いますが
私が最初に思いつくのが、SQLでサブクエリを使いINSERT文で移行する方法ですね。
ですが、今回はAccessということですし、2つのテーブルは全く同じ項目ではないかと思います。
・Access
・2つのテーブルは全く同じ
ということで、以下の方法が簡単なのではないでしょうか。
(PC性能にもよりますが、データ量が数千件・数万件の場合)
テーブルA
テーブルB
テーブルY(新テーブル)
1、新テーブルYの項目全てにキーを張る。
2、テーブルAをコピーしてテーブルYへ貼り付ける。
3、テーブルBをコピーしてテーブルYへ貼り付ける。
※テーブルBを貼り付けた時に、キーが設定されているので重複がある様だったら、貼り付けエラーになるので重複データは張り付かない。
勉強の為にSQL文を書きたいのであれば、サブクエリーとEXISTSで検索すればヒントになるかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
10代と話して驚いたこと
先日10代の知り合いと話した際、フロッピーディスクの実物を見たことがない、と言われて驚きました。今後もこういうことが増えてくるのかと思うと不思議な気持ちです。
-
秘密基地、どこに作った?
小さい頃、1度は誰もが作ったであろう秘密基地。 大人の今だからこそ言える、あなたの秘密基地の場所を教えてください!
-
【お題】引っかけ問題(締め切り10月27日(日)23時)
【大喜利】 「日本で一番高い山は富士山……ですが!」から始まった、それは当てられるわけ無いだろ!と思ったクイズの問題
-
自分のセンスや笑いの好みに影響を受けた作品を教えて
子どもの頃に読んだ漫画などが その後の笑いの好みや自分自身のユーモアのセンスに影響することがあると思いますが、 「この作品に影響受けてるな~!」というものがあれば教えてください。
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
EXISTSを使ったDELETE文
SQL Server
-
2つのテーブルに共通するレコードを削除したい
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【SQL】他テーブルに含まれる値...
-
SQLで、Join句で結合したテ...
-
既存データをINSERT文にして出...
-
ACCESS クエリーでソートの不具合
-
テーブル名が可変の場合のクエ...
-
Accessの構成をコピーしたい
-
データ無し時は空白行にしたい...
-
同一テーブル内での比較(最新...
-
副問合せを使わずにUNIONと同様...
-
ACCESSのVBAにてExcelに行...
-
2つのテーブルをLIKE演算子のよ...
-
指定した年に在籍していた社員...
-
DB、キャストとインサートを...
-
ADO+ODBCでテーブルに接続する...
-
親子関係があるテーブルでの抽出
-
PRIMARY KEYのコピー
-
パススルークエリ&ACCESSテーブ...
-
ExcelのVLOOKUP関数の動作をMyS...
-
SQLのテーブルにないデータの出力
-
ExcelのMatch関数のようなもの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【SQL】他テーブルに含まれる値...
-
既存データをINSERT文にして出...
-
SQLで、Join句で結合したテ...
-
結合したテーブルをSUMしたい
-
テーブル名が可変の場合のクエ...
-
Accessの構成をコピーしたい
-
同一テーブル内での比較(最新...
-
ADO+ODBCでテーブルに接続する...
-
ACCESS クエリーでソートの不具合
-
SQLサーバに対するSQL文で抽出...
-
ACCESSのVBAにてExcelに行...
-
改行を含んだデータのインポート
-
PRIMARY KEYのコピー
-
MySQL: 複数テーブルのcount
-
データ無し時は空白行にしたい...
-
ExcelのVLOOKUP関数の動作をMyS...
-
ExcelのMatch関数のようなもの...
-
2つのテーブルをLIKE演算子のよ...
-
Access特定のテーブルを編集不...
-
Excelでしりとりを作る方法
おすすめ情報