- ベストアンサー
accessで2つのテーブルから参照する方法
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
参照用のテーブルならユニオンクエリーで連結すれば出来ます。 http://office.microsoft.com/ja-jp/access/HA012315211041.aspx?pid=CH100728991041 http://makotowatana.ld.infoseek.co.jp/access/index.html (「5.同じレイアウトの複数のテーブルの処理」を参照)
その他の回答 (1)
- kurodai2
- ベストアンサー率38% (77/202)
UNIONを使います。 SELECT テーブルA.ID, テーブルA.品名, テーブルA.価格 FROM テーブルA union all SELECT テーブルB.ID, テーブルB.品名, テーブルB.価格 FROM テーブルB
お礼
ありがとうございます。 いとも簡単にできました。
関連するQ&A
- アクセスの2つのテーブルから重複しないものを抜き出す方法について
アクセスの2つのテーブルから重複しないものを抜き出す方法について 例えば テーブル Aには ID 価格 商品 1 200 りんご 2 150 みかん 3 180 りんご 4 230 いちご テーブル Bには 1 150 みかん 2 180 りんご とあった場合 A-B のクエリーを実行して 1 200 りんご 2 230 いちご という結果を得たいのですが、どのようにすれば出来るのでしょうか よろしくお願いします。
- ベストアンサー
- その他(データベース)
- access テーブル結合の逆?
Access2003 お世話になります。SQLで以下のようなデータを取得する場合、上手い方法はあるのでしょうか。なんだかとても簡単な事のような気がするのですが…… テーブルA: ---品名--- りんご みかん もも いちご テーブルB: ---品名--- りんご もも このテーブルBに入力されているレコードをテーブルAから"除外"して、結果として「みかん」と「いちご」だけが欲しいのです。 テーブルBのレコードが少なければ、直接 品名<>"りんご" とか書いてもいいのかもしれませんが、結合のようなSQLで一発でできてしまったりしないでしょうか。 access上で可能なスマートな方法があれば教えていただきたいです。 よろしくお願いいたします。
- ベストアンサー
- その他(データベース)
- Access #エラーについて
Access初心者です。 よろしくお願いいたします。 [前提] テーブルA のIDに紐づけてクエリBの数値をクエリCで反映させたい。 〈詳細データ〉 ・テーブルA [ID] [名称] 1 あ 2 い 3 う 4 え 5 お ・クエリB [ID] [数値] 2 10 3 20 5 40 ・クエリC [ID] [名称] [数値] 1 あ #エラー 2 い 10 3 う 20 4 え #エラー 5 お 40 ・”テーブルAの[ID]”の全レコードと”クエリBの[ID]”の同じ結合フィールドだけを含めてリレーションを行っている。 ・クエリCの算式: IIf(IsError([クエリB].[数値]),0,[クエリB].[数値]) [質問] ・クエリCの『#エラー』部分を0にしたいのですが、何か良い方法はございませんでしょうか。 ・そもそも上記のロジックは無理がありますでしょうか。 アクセスはあまりいじったことがございません。ご回答いただけますと幸いです。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- MySQLで別テーブルを参照し、レコードを消したい
お世話になります。MySQL4のデータベース上に2つのテーブルがあるのですが、 片方のテーブル(a)にあるフィールド(b_id)の値を参照し、もう片方のテーブル(b)のレコードを消していきたいのです。 具体的には以下のようなテーブル(a)とテーブル(b)があります。 TBL: a =========================== id b_id category =========================== 0 1 3 --------------------------- 1 2 1 --------------------------- 2 3 2 --------------------------- 3 4 2 --------------------------- TBL: b =========================== id name price =========================== 0 goodsA 1,000 --------------------------- 1 goodsB 500 --------------------------- 2 goodsC 250 --------------------------- 3 goodsD 2,500 --------------------------- 4 goodsE 1,800 --------------------------- やりたいことは、テーブル(a)の「category」フィールドが「2」以外であれば、 そのレコードの「b_id」にある数値を「id」にもつ、テーブル(b)のレコードを消していきたいのです。 上記の例だと、テーブル(a)のid「0」と「1」がcategoryに「2」以外を持っています。 この2つのレコードのb_idは「1」と「2」ですので、テーブル(b)のid「1」と「2」を消したいと思っています。 SQLについて知識がなく、困っています。どなたかご存知の方がいらっしゃいましたら、お知恵をお貸しください。 よろしくお願いします。
- 締切済み
- MySQL
- Accessでテーブルの内容を参照したい
お世話になります。 Access2000で作成しております。 下記のテーブルAがあります。 名前1とタイム1,名前2とタイム2をセットにして、 Bの形で表示したいのですが、 どのようにすればできるでしょうか? 表現が下手で申し訳ないのですが、 テーブルを作るのではなく、既に存在しているテーブルAの 情報を「参照」して、Bの形で表記したいのです。 可能でしたら、「クエリ」で、説明難しければ「SQL」で 教えていただければと思います。 ※SQLの場合は、クエリに変換して使用します。 ----テーブルA---- 番号 名前1 名前2 名前3 タイム1 タイム2 タイム3 1 山田 田中 佐藤 10 8 9 2 鈴木 木村 戸田 7 8 9 ----B------ 名前 タイム 山田 10 田中 8 佐藤 9 鈴木 7 ・ ・ -------------------- お手数ですがよろしくお願いいたします。
- ベストアンサー
- その他(データベース)
- ExcelからAccessへのコピーする場合
Access97とExcel2000を利用しています。 例えばaccessで、 テーブルAには ID と 製品名 のフィールドを設けます。 テーブルBには ID と 販売個数 というフィールドを設けます。 ここでテーブルA,BのIDは同じものでオートナンバーです。 また、Excelで、 セルA1,A2,A3にはそれぞれ製品名として チョコレート、キャンディー、ビスケットが入力されています。 まず、ExcelのA1のチョコレートからA3のビスケットを範囲指定しコピーしました。 これをAccessのテーブルAに貼り付けしたいと考えています。 質問は、 Accessに貼り付ける場合、何処にカーソルを運んで貼り付ければ良いのでしょうか。 また、テーブルAにExcelのデータを貼り付けた場合、増えたレコードはテーブルBに反映されるのでしょうか。 初心者です。教えて下さい。
- 締切済み
- オフィス系ソフト
- Accessクエリ IIFについて
お世話になります。 2つのテーブルをIDで紐付けて、それぞれの項目を比較し、○×を付けたいと思います。 【テーブルA】 ID メーカー 型番 品名 【テーブルB】 ID メーカー 型番 品名 【クエリC】 テーブルAとテーブルBをIDで紐付けて、各フィールド名を テーブルAの方は前回_メーカー、前回_型番、前回_品名 とし、 テーブルBの方は今回_メーカー、今回_型番、今回_品名 とする。 【クエリD】 クエリCを元に、 前回_メーカー、前回_型番、前回_品名、今回_メーカー、今回_型番、今回_品名 を並べて表示し、それぞれを以下のように評価する。 メーカー評価:IIf([前回_メーカー]=[今回_メーカー],"○","×") 型番評価:IIf([前回_型番]=[今回_型番],"○","×") 品名評価:IIf([前回_品名]=[今回_品名],"○","×") 上記3つの評価でいずれかが×となっているレコードを抽出。 しかし、前回と今回でいずれも型番が空白(Null)だった場合、上記評価を すると"×"となってしまいました。 そこで質問ですが、 ・そもそもNull同士の評価は"×"になってしまうのでしょうか?(比較できない?) ・テーブルAはSQL Server上にあり、テーブルBはExcelをインポートしたもの (Accessのローカルテーブル)です。この違いによるものでしょうか。 ご教授の程、宜しくお願い致します。
- ベストアンサー
- その他(データベース)
- 複数のテーブルに対して・・・
過去に同様の質問があったかも知れませんが、Accessのバージョンがかなり古いので質問させて下さいね。 Access97(すみません、ホント古くて…)で、下のような顧客情報管理ファイルを作成しました。 テーブルA<→フォームA> ・顧客ID(主キー: テキスト型) ・氏名 ・情報A1, A2~ ・入力フォームB~への移動ボタン(同一IDレコードの表示) テーブルB<→フォームB> ・顧客ID(主キー: テキスト型) ・情報B1, B2~ テーブルC<→フォームC> ・顧客ID(主キー: テキスト型) ・情報C1, C2~ 最初からテーブルA~Cを結合したものを作ればよかったのですが、 それぞれのテーブルについて細かい入力項目が30~40個あるため、 分割して作成してしまいました(そして今後もテーブルは増える可能性大です)。 現在、テーブルAにだけ、20人分のデータが入っています。 今後も顧客数やテーブルが増える予定なのですが、 その都度テーブルごとに顧客IDをいれるのが面倒になってきました。 そこでお訊ねしたいのですが、テーブルA(を元にしたフォームA)に顧客IDを入れると、 テーブルBやCにも同じテキストが入力されるような設定は可能でしょうか。 最初、クエリーで連結しようとしたのですが、 既にテーブルAにいくつかデータが入っているせいか、どうも上手く反映されません。 単に私の参照方法が下手だったからかもしれませんが…。
- ベストアンサー
- オフィス系ソフト
- Access 2007で、テーブルからレコードを削除するクエリを作りた
Access 2007で、テーブルからレコードを削除するクエリを作りたい。 具体的には、テーブルAのフィールドF1とテーブルBのフィールドF2があるとします。このとき、テーブルA中の各レコード(仮にXとします)であって、そのF1の値と同じ値をF2に持つレコードがテーブルBに含まれている場合は、(テーブルAから)そのレコードXを削除するという処理をしたいのです。ややこしいと思いますが、これをクエリやマクロで作ることはできるでしょうか? 私はVBAを知らない初心者です。上の処理も文章で書くと理解してもらえるかどうか不安ですが、だれか助けて下さい。
- ベストアンサー
- Access(アクセス)
お礼
おぉ!ありがとうございます。