• ベストアンサー

クエリでこのテーブルのデータにあったら○○を表示。

アクセスのクエリについてですが、 A,B 2つのテーブルから一つの表を作っています。 (ここはとあるキーで単純に項目を選んで出力) そこに「区分」という項目を出力したいと思います。 その区分に表示する文字は別のCテーブルにあるIDと一致したら 「在庫」、また別のDテーブルにあるIDと一致したら「返却」といった具合に、文字を出力したいです。 「区分」の条件?をどのように記述したらよろしいでしょうか。 よろしくお願いします。

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

  • ベストアンサー
  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.1

CのテーブルとIDでLEFT JOINして、IDがNULLじゃなかったら、在庫。DのテーブルとIDでLEFT JOINして、IDがNULLじゃなかったら、返却。 両方ともNULLの場合や、両方ともNULLじゃない場合は、在庫か返却か判らないので「区分」は好きにして下さい。

hirachan2
質問者

お礼

助かりました! 回答のとおりで希望の出力ができました。

関連するQ&A

  • Accessクエリーで両方のテーブルの全てのデータを表示することは可能ですか?

    Accessの本来の主旨にあってないと思うのですが・・・。 とあるデータの入ったテーブルをA:1月分・B:2月分と分けて作成して おります。 この2つのテーブルをクエリーでひとつのデータにまとめたいと思い、 品番をキーにクエリーを作成しましたが、結合の種類ではA・B両方一致した データか、AのすべてのデータとBの一致したデータというように片方を 主にしたデータしか表示することができません。 AにはあるがBにはない、AにはないがBにはあるといった具合に、 一致したデータはもちろんのこと、一致しないデータも片方だけではなく 両方のテーブルのデータを表示することは可能でしょうか? そもそも、同じ構造のテーブルならひとつにまとめてクロス集計クエリーで 品番別に月単位で表示するようにしたらよいのでしょうか? できればテーブルはひとつにまとめたくないのですが・・・。 Accessの構造をあまり知らなくてごめんなさい。 よい解決策があったら教えてください。

  • 選択クエリを基に不一致クエリを作成したけれど...

    識者の力をお借りしたく質問いたします。 質問ページから不一致クエリに関する内容を参考に、ある不一致クエリを作成しています。 しかし、出来るはずの方法で結果が正しく表示されず途方にくれています。 処理の内容としては、あるクエリのフィールドを参考に不一致クエリで差分レコードを抽出したいというものです。 通常不一致クエリはテーブルの主キーを基に作成するものと私は理解しているのですが、今回の処理では基のテーブルに主キーが無く、(作成できない事情があり)クエリで無理矢理主キーもどきのものを作りました。 クエリで作成したのは、数字6桁(最大で)の後ろにチェックディジットとしてアルファベット1文字を追加した計7文字のフィールドです。 例:131401A 不一致を抽出したい基となる2つのテーブルに対しこのクエリを作成しました。 この2つのクエリから不一致クエリで差分を抽出し、基のテーブルに追加クエリで追加したいのですが、どうやっても不一致項目が表示されません。 根本的にクエリからの不一致クエリは作成できないのでしょうか? よろしくお願いいたします。 ■状況 テーブル1/テーブル2(基となるテーブル、主キー無し) クエリ1/クエリ2(テーブル1/テーブル2のレコードにコードを追加するクエリ) コード1/コード2(クエリ1/クエリ2で作成したコード)例:131401A 不一致クエリ テーブル2 → テーブル1 (リレーションシップ) コード2 条件:Not Null ※テーブル2の方が最新レコードが入っているので、テーブル2の差分レコードをテーブル1に追加したいというのが基本的な内容です。 よろしくお願いいたします。

  • ACCESSクエリー記述方について

    教えてください。 テーブル構造は下記の通りです 項目 在庫  区分 1  100 ばなな 2  200 ばなな 3  300 りんご 4  100 いちご もし区分がバナナなら、在庫を足す(この場合は、100と200) もし区分がリンゴなら、在庫を足す(この場合は、300) もし区分がイチゴなら在庫を足す(この場合は100) というようなクエリーが書きたいです。 IIF(バナナ、SUM(在庫))??? 非常に悩んでいます・・・。よろしくお願いします。

  • Access更新クエリについて教えて下さい

    アクセス超初心者です。 入庫クエリでIDごとの入庫数を合計、 出庫クエリでIDごとの出庫数を合計し、 在庫クエリで在庫数を計算しています。 (入庫クエリの入庫数の合計)-(出庫クエリの出庫数の合計) 部品テーブルがあり、現在庫フィールドを作っています。 ID 部品名 現在庫 1  AAA   10 2  BBB   5 在庫クエリの在庫数を、部品テーブルの現在庫数に 代入したいと考えています。 在庫クエリを使い、テーブル作成クエリで現在庫テーブルを作成、 現在庫テーブルから更新クエリで、部品テーブルの現在庫数を 更新できるのではないかと考えたのですが、 つまづいてしまいました。 現在庫テーブル ID 在庫数 現在庫テーブルの在庫数を、IDごとに部品テーブルの現在庫に 置き換えることは可能ですか? また、その他よい方法がありましたら、教えて下さい。 ご指導のほど、よろしくお願いします。

  • access 更新クエリ?追加クエリ?

    access超初心者です。 いま、下記のような在庫表をつくっています。 (出庫テーブルは省略してます) 入庫テーブル  ID  入庫日付  大分類  中分類  小分類  数量   在庫テーブル  ID  大分類   中分類   小分類  最初の数  入庫数   出庫数 入庫更新クエリ *入庫→在庫  大分類        中分類           小分類 ・入庫の全レコードと在庫表の同じ結合フィールドのレコードだけを含める で結合しています。 *在庫表の入庫数  レコードの更新で  NZ([在庫数]![入庫数],0)+NZ([入庫]![数量],0) といれています。 入庫テーブルに入力していき その都度、 入庫更新クエリにて更新し 在庫表に反映させていきたいと思っています。 入庫表には、この先 在庫表にないものもでてくるので 在庫表にないものは 追加、あるものは、更新としていきたいです。 今の状態だと 入庫表のものは、更新クエリでいったん在庫表に反映されるのですが 入庫表にレコードを追加して また更新クエリをかけると 在庫表が、前に更新したレコードの分も 重複して反映してしまいます。 これをなくすには、どういった方法が ありますか? 宜しくお願いいたします

  • クエリを使ってテーブルを更新したいのですが

    すみません、大学でやっているプロジェクトが行き詰ってしまい、初めて書き込みをさせていただきます。 今私はaccess 2003でレストランの在庫管理システムを作ろうとしているのですがフィールド間の計算がうまくいかないので困っています。テーブルは3つあり テーブル  :商品テーブル ーーーーーーーーーーーーーーーーーーーーー フィールド :商品名(主キー)text フィールド :販売数 number ーーーーーーーーーーーーーーーーーーーーー テーブル  :グラムテーブル ーーーーーーーーーーーーーーーーーーーーー フィールド :グラムテーブルId(主キー)auto number フィールド :商品名 text フィールド :食材名 text フィールド :食材に使うグラム数 number ーーーーーーーーーーーーーーーーーーーーー テーブル  :食材テーブル ーーーーーーーーーーーーーーーーーーーーー フィールド  :食材名(主キー)text フィールド  :食材の在庫 number ーーーーーーーーーーーーーーーーーーーーー リレーションシップは商品テーブルとグラムテーブルが1対多の関係で、食材テーブルとグラムテーブルも1対多の関係です。 私の中のイメージでは使用者が商品テーブルの販売数を打ち込んで食材の在庫数が変わっていくような感じで作りたいので、とりあえず、更新クエリを使って 食材テーブル.食材の在庫:[食材の在庫]-([商品テーブル.販売数]*[グラムテーブル.食材に使うグラム数]) という式を打ち込みましたが変化はありませんでした。なにか、間違っている部分もしくは変更しなきゃならない部分があるならご教授お願いいたします。 わかりにくい文で本当にすみません。

  • 更新クエリが実行できず、困っています。

    以前こちらで、更新クエリについて教えて頂きましたが、 実行できず、困っています。 在庫クエリで計算した在庫数を、部品マスタの現在庫に代入する 更新クエリを実行すると、 「更新可能なクエリでなければなりません」とエラー表示されます。 UPDATE T_部品マスタ AS A INNER JOIN Q_在庫 AS B ON A.部品品番=B.部品品番 SET A.現在庫 = B.在庫数; と作成しました。 以下に、作成したデータベースを書き出してみます。 どこが悪いのか、ご指摘頂ければ幸いです。 よろしくお願いします。 部品分類テーブル 部品分類ID(主キー) 部品分類名 保管場所テーブル 保管場所ID(主キー) 保管場所 部品マスタテーブル(T_部品マスタ) 部品品番(主キー) 部品分類ID 保管場所ID 部品名 現在庫 入出庫テーブル 入出庫ID(オートナンバー) 日付 部品品番 入庫数量 出庫数量 入出庫テーブルを元にクエリを作る 入庫クエリ 部品品番 入庫数量の合計 出庫クエリ 部品品番 出庫数量の合計 在庫クエリ(Q_在庫) 部品品番(部品テーブル) 部品名(部品テーブル) 入庫数量の合計(入庫クエリ) 出庫数量の合計(出庫クエリ) 在庫数(nz([入庫数量の合計])-nz([出庫数量の合計])

  • Accessでテーブルやクエリのリストを作りたい。

    テーブルが100、クエリが200ほどあるデータベースを使用してます。そのほかにレポート、フォーム、マクロもそこそこあります。これらのテーブル名やクエリ名の一覧表を作成したいのですがどうすればいいでしょうか。出力はファイル(たとえばExcelなど)でもプリントアウトでもかまいません。初心者なのでできるだけ簡単方法を教えていただければ助かります。よろしくお願いします。

  • 別々の性質のもつテーブルのクエリーとレポートについて

    ACCESS2000において テーブルA  ID  氏名  口座   テーブルB  ID  振込み月  金額A テーブルC  ID  振込み月  開発費 テーブルD  ID  振込み月  金額B 上記のようなテーブルが存在するときに、 リンクまたはクエリーでそれぞれのテーブルの 内容をまとめて、レポートを出力させます。 このとき、それぞれのテーブルでの振込み月は 必ず毎月存在するとは限らないので、存在しない 月はデータがありません。 それぞれのテーブルのデータを集計し、各IDにおける その月の振込み月の金額の合計を算出します。 レポートにおいては、振込み月とそれぞれの金額と 金額の合計をレポート印刷します。 そのままのクエリーを考えると、それぞれのテーブルの データをもつIDのみ、クエリーのデータとなってしまう ので、その月のデータがない場合でも金額¥0として クエリーとしたいですが、どのようにすればいいでしょうか?よろしくお願いします。

  • ACCESSのクエリ計算

    Access2003でクエリで特定条件に一致するIDを出して 今度はそのそれぞれのIDから+100(IDが2なら2~102の範囲でというように)の元のテーブルの 値の中からフィールド1が5以上の条件に一致するものの最小のIDをもとめたいと思ってます。 始めたばかりの初心者です DMINでできるのかなと思って下記式にしてみたのですが パラメーターエラーでうまくいかなくて、、 DMin("[テーブル1].ID","[テーブル1]","[テーブル1].ID>=[クエリ1].ID&[ID]<[クエリ1].ID+100&[テーブル1]フィールド2>5")