-PR-
解決済み

ACCESSで他クエリーを利用して削除する

  • すぐに回答を!
  • 質問No.10412
  • 閲覧数95
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 68% (42/61)

ACESS97で、他のクエリー(選択クエリー)の結果を利用
して、削除クエリーを作りますと、「更新可能なクエリー
でなければなりません」というエラーが出ます。

具体的に言いますと、
テーブルAで「あ」というフィードで集計し1行
しかない行を削除したいのです。

私がTRYした方法は、「あ」というフィールドで
テーブルAを集計し行数をカウントする選択クエリーを
作成し、別の削除クエリーでそれを参照しようと
しました。
そうしましたら、前述のエラーが発生しました。

削除クエリーの中で行を集計するようなものが作れれば
要件は満たされるのですけど。。。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル13

ベストアンサー率 46% (643/1383)

どのクエリーが削除できて、どのクエリーが削除できないのかを書こうとすると、結構問題がややこしくなってしまうので、割愛します。

削除クエリーで削除できるかどうかは、そのクエリーをデータシートビューで表示した時に、レコードを削除できるかどうかによります。

もし、データシートビューで削除できないのなら、クエリーを工夫してやる必要がありますね。

例えば、こんな感じ。(テーブル名などを変更してから、クエリーをSQLビューにして、貼り付けてください)

DELETE *
FROM テーブルA
WHERE あ In (SELECT あ FROM テーブルA
       GROUP BY あ HAVING COUNT(あ) =1);

詳しくは、ヘルプで「サブクエリ」をお調べください。
お礼コメント
nakamamo

お礼率 68% (42/61)

ありがとうございました。
バッチリです!!

SQLはある程度学んでいたんですが・・・
そう、こういうのありましたね。

他にも anyとかallとかあるようで、
もっとお勉強します。
投稿日時 - 0000-00-00 00:00:00
-PR-
-PR-
このQ&Aのテーマ
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


専門家があなたの悩みに回答!

-PR-

ピックアップ

-PR-
ページ先頭へ