• ベストアンサー

データ検索について

k_o_r_o_c_h_a_nの回答

回答No.2

質問に書いてある条件通りに書くと、こんな感じ。 SELECT 注文NO,商品名,個数 FROM 購入実績テーブル WHERE 購入年月日 LIKE &年月 || '%' AND 商品名=&商品名 UNION ALL SELECT 注文NO,商品名,個数 FROM 購入予定テーブル a WHERE 購入予定年月=&年月 AND 商品名=&商品名 AND not exists (select 1 from 購入実績テーブル b where a.商品名=b.商品名 and a.購入予定年月=substr(b.購入年月日,1,6)) ;

関連するQ&A

  • 少し複雑な検索条件

    初歩的な質問だと思われるため、恐縮ですがご教授ください。 以下のような2つのテーブルがあります。 <テーブルA> 会員NO 生年月日 1 20000101 2 20000102 3 20000103 4 20000104 <テーブルB> 会員NO 生年月日 1 20000101 2 20000102 2 99999999 3 99999998 3 99999999 この状態で、 「テーブルA」の「会員NO」すべての内、 「テーブルB」の「会員NO」と一致し、かつ「生年月日」が1つも一致しない「会員NO」を拾い出したいと考えています。 ↑のテーブルでは、「会員NO」 3 のみが該当する条件となります。 1 → 会員NOと生年月日が一致する 2 → テーブルBで会員NOが一致する2件のうち、片方の生年月日が一致する 4 → 会員NOが一致しない どうか、よろしくお願いいたします。

  • Accessで、複数のテーブルからデータを繋げたい

    ■テーブル1 2011年データ 行:名前 列:年月日 201101~201112 行:商品名 値:件数 ■テーブル2 2010年データ 行:名前 列:年月日 201001~201012 行:商品名 値:件数 となっております。 列を伸ばして、201001~201112までのデータにしたいのですが クエリの組み方が不明です。 ネットでサーチはしたのですが、該当のものが出てこず、良ければ教えて下さい!

  • エクセルのデータ集計

    エクセルでデータの集計についての質問です。 商品のデータベースで「商品名」「注文日」「納品日」が入っています。 「注文日」から「納品日」までが入荷を待ち状態ということになります。 ここで、日ごとの納品待ち商品合計数の年平均を取るにはどうすれば良いでしょうか。 エクセルorアクセスで集計する方法を教えてください!! よろしくお願いいたします。

  • Accessのクエリ集計について

    Accessのクエリ集計について kamuycikapです。 テーブルを集計するクエリについて悩んでいます。 以下がテーブルの状況と試行錯誤しているクエリ。 そして実行結果の箇条書きです。 非常に長文ですが、識者の方のアドバイスをお願い致します。 --ここから <データベース構造:リレーションシップ> リレーションシップとテーブルの構成は下記の通りです。 -->がリレーションシップです。 ■テーブルA      ■テーブルB    ■テーブルC    ■テーブルD 納品書コード ーー> 納品書コード ーー> 納品書コード  ーー> 納品書コード 仕入数          商品コード  ーー> 商品コード   ーー> 商品コード                               商品連番    ーー> 商品連番                               出品数量        出品連番                               商品名           発送個数                               色             発送日付                               サイズ                               売値 <作りたいデータ> 納品書コード、商品コード、商品連番、商品名、色、サイズ、売値、仕入数、出品数量、発送個数、出品在庫数、倉庫在庫 <クエリ> ○グループ  納品書コード、商品コード、商品連番、商品名、色、サイズ、売値、仕入数、出品数量 ○合計(集計)  発送個数 ○出品在庫数(演算)  [出品数量]-[発送個数] ○倉庫在庫(演算)  [仕入数]-[発送個数] <データ状況> テーブルCのデータは約300レコードありますが、そのうち20件ほどしか商品が発送されていない為、テーブルDのデータは20件しかありません。 <望む結果> テーブルCのデータが全て表示され、紐つけられたテーブルDのデータがが存在する場合は、発送個数を表示し出品在個数を演算する。 演算した出品在個数を利用して、倉庫在庫も演算する。 <クエリの実行結果> テーブルCのデータが全て表示されず、テーブルDに紐つけられたレコードのみが表示されるため、約300件のデータではなく、テーブルDに入力されている20件しか表示されない。 --ここまで 目的は、テーブルCのデータを全て表示し、発送情報がテーブルDに入力されているデータについては演算結果を表示する事です。 現状では、テーブルDのデータしかテーブルCのレコードが表示されません。。。。 どうすれば目的のデータを収集できるクエリが作成で切るのか、識者の方のアドバイスをお願いします。

  • エクセルの複数行にわたったデータの処理

    名前、住所、注文商品等が入ったエクセルのデータから、納品書を印刷したくて困っています。 こんな感じ↓ 受注日 お名前   住所    商品   個数 12/1 山田太郎  東京都~  ワイン  1                 日本酒  2                    エクセルのデータの方が、商品を複数注文された方の場合、2行目が名前、住所等が空欄になり、商品、価格のみデータセルに入っています。 最初はアクセスに変換して納品書印刷と思っていたのですが、この注文商品2品目以降の、住所等が空欄になっている行の処理がうまくいきません。 この複数行のデータを、入力し直すことなしに納品書印刷できるものなのでしょうか? 連続印刷ができればアクセスにはこだわりません。 よろしくお願いします。

  • Exel 検索方法

    目的は   データテーブル ―――――――――― |購入商品No|購入者| ―――――――――― |   001  | 鈴木 | ―――――――――― |   002  | 山田 | ―――――――――― |   001   | 斉藤 | ――――――――――   商品購入者分類    ―――――――――― |購入商品No|購入者| ―――――――――― |  001  |鈴木 | ―――――――――― |     |斉藤 | ―――――――――― |    | | ―――――――――― ―――――――――― |購入商品No|購入者| ―――――――――― |  002  |山田 | ―――――――――― |     |   | ―――――――――― |    | | ―――――――――― 上記のようにデータテーブルから 商品購入Noが同じ人をリスアップする 方法を探しています。 VLOOKUPの参照セルで該当する値は1種類しか 無理ですよね。 良い方法があればご教授くださいませ。 Win2000 Office2000

  • 注文データのデータの整合性について

    1つ、教えてください。 例えば、「商品マスタ」というテーブルに下記のデータがあるとします。 商品コード:1001 商品名:DVD-R 金額:980 「注文」というテーブルに上記の商品(商品コード:1001)の注文データが存在している時、 「商品マスタ」から「商品コード:1001」の商品を削除されないようにする事をなっていうのでしょうか。 「データの整合性」??? 「参照整合性」でいいんでしたっけ??? くだらない質問をしてすみませんがご教授いただけませんでしょうか。 宜しくお願いします。

  • access97に2001年のデータ検索

    アクセス初心者のyaschiです。 よろしくお願いいたします。 テーブル入力されているデータを日付を条件に 取得しようと思い、以下のようなSELECT文を作りました。 SELECT * FROM AAA WHERE 年月日=#99/03/17#; このSELECT文の場合、きちんとデータを取得できるのですが、 2001年1月10日のデータを取得しようとしてWHERE句を 以下のように変えたところできませんでした。 WHERE 年月日=#01/01/10#; 2000年の問題かと思い2000年11月20日のデータを取得しようと WHERE句を以下のように変えたら今度は取得できました。 WHERE 年月日=#00/11/20#; なぜ、2001年のデータだけ取得できないのでしょうか?

  • Accessの重複データについて

    下記のようなフィールドでできたテーブルがあります。 NO│Eメールアドレス│商品名 このデータには同じEメールアドレスで商品名が複数あります。 それを1つのEメールアドレスに対して Eメールアドレス│商品名1│商品名2│商品名3…… のようなテーブルに加工したいのですが 可能でしょうか?

  • Accessのクエリによる集計が出来ない

    Accessのクエリによる集計が出来ない kamuycikapです。 OKWaveで様々な方のアドバイスを頂きながら、慣れないAccessと悪戦苦闘しております。 一昨日、計算したい表を作成する為にOKWaveに質問を載せました。 http://okwave.jp/qa/q5549286.html 無事に上記のアドバイスでリレーションのオプション設定を行い、集計計算したいクエリの結果を表示することが出来ました。 その表を元にして 下記の質問でアドバイス頂いた方法による集計を行おうとしたのですが、集計出来なくて困っています。 http://okwave.jp/qa/q5544785.html データベースの構成とキーは以下のとおりです。 --ここから <データベース構造:リレーションシップ> リレーションシップとテーブルの構成は下記の通りです。 -->がリレーションシップです。 Kがキーになります。 ■テーブルA      ■テーブルB    ■テーブルC    ■テーブルD K納品書コード --> K納品書コード --> K納品書コード  --> K納品書コード 仕入数          K商品コード  --> K商品コード   --> K商品コード                             K商品連番    --> K商品連番                             出品数量        K出品連番                             商品名           発送個数                             色             発送日付                             サイズ                             売値 ※テーブルCからテーブルDへのリレーションオプションを「’テーブルC’の全レコードと’テーブルD’の同じ 結合フィールドのレコードだけを含める。」としています。 <作りたいデータ> 納品書コード、商品コード、商品連番、商品名、色、サイズ、売値、仕入数、出品数量、発送個数、出品在庫数、倉庫在庫 <クエリ> ○グループ  納品書コード、商品コード、商品連番、商品名、色、サイズ、売値、仕入数、出品数量 ○合計(集計)  発送個数 ○出品在庫数(演算)  [出品数量]-[発送個数] ○倉庫在庫(演算)  [仕入数]-[発送個数] <データ状況> テーブルCのデータは約300レコードありますが、そのうち20件ほどしか商品が発送されていない為、テーブルDのデータは20件しかありません。 <望む結果> テーブルCのデータが全て表示され、紐つけられたテーブルDのデータがが存在する場合は、発送個数を表示し出品在個数を演算する。 演算した出品在個数を利用して、倉庫在庫も演算する。 <クエリの実行結果> テーブルCのデータが全て表示され、テーブルDに紐つけられたレコードも表示されるが、テーブルDに入力されている20件のデータが商品連番(テーブルCのフィールド)ごとに集計されない。 --ここまで <目的> お店に出品された商品は、日を分けて少しずつ売れていきます。(一日で全部売れることもありますが....) 従って、出品された商品(テーブルCのデータ)に対して売れていく数(テーブルDの複数のレコード)のデータがぶら下がっている形になります。 このようなデータベースですので、出品した商品が何個売れたかを計算する為には、商品に対する売れた個数を集計(合計)しなければなりません。 <結果> テーブルCの商品連番ごとの発送個数を集計したいのですが、テーブルDの出品連番ごとの集計になっている様子です。 <頂きたいアドバイス> 上記のデータベースとクエリで、テーブルCの商品連番に紐ついたテーブルDに格納されている発送個数の合計値を集計するための方法 以上、識者の方のアドバイスをお願い致します。