saku660 の回答履歴
- 商品テーブルと2つの在庫テーブルの結合ができない
商品のデータベースがあるんですが、一つの商品テーブルに複数の店舗の商品をまとめて登録しています。在庫数は店舗別のテーブルで分けているのですが、これをSQLで商品コードで結合ができません。 仮に商品がA、B、Cと登録されていたとして、店舗1にはAとBの商品があるため2つの在庫数を設定しており、店舗2にはBとCの商品があるため2つの在庫数を設定しています。 つまり片方のみの商品もあれば両方に存在する商品があります。 このときにSQLで商品情報を取得する場合に、結合したいのですが結果が0件となり上手く結合ができません。 商品コードがBのときにSELECT文で両店舗の在庫数を同時に取得したいし、AやCではそれぞれの店舗在庫を取得したいのですが、何か良い方法はないものでしょうか?
- ベストアンサー
- MySQL
- o2shgi3eatge
- 回答数2
- 4つのテーブルで構成される売上データをまとめたい
お世話になっております。4つのテーブルの結合について質問させて下さい。(MySQL5) データベースの内容は販売に関するもので、以下のような4つのテーブルがあります。(不必要なカラムは省略しています) テーブル名:goods(商品 goods_no | goods_name 1 りんご 2 みかん 3 いちご テーブル名:member(顧客データ) member_no | member_name 1 鈴木 2 佐藤 3 小林 4 斉藤 テーブル名:slip(伝票番号) slip_no|sales_member_no|sales_date 1 2 2013-6-1 2 4 2013-6-1 3 1 2013-6-2 4 3 2013-6-3 ※slip.sales_member_no = member.member_noです。 テーブル名:sales(売上から入金までのデータを時系列で登録) sales_no|sale_slip_no|sales_goods_no|sales_goods_price|sales_goods_cnt|request|receipt 1 1 2 350 5 1750 2 1 3 400 3 1200 3 2 1 200 5 1000 4 2 3 400 4 1600 5 1 receipt 2950 6 2 receipt 2600 7 3 1 200 8 1600 8 4 2 350 5 1750 9 3 receipt 1600 10 4 receipt 1750 ※sales.sale_slip_no=slip.slip_noです。 sales.sales_goods_no=goods.goods_noです。 以上のようなテーブルがあり、4つのテーブルを結合して、 伝票単位で、売上詳細(sales)、商品名(goods)、顧客名(member)を以下のように伝票番号順で一覧で表示したいと考えていますが、エラーだったり、期待している結果を得ることが出来ません。 どのようにすれば宜しいのかアドバイスのほど頂戴出来れば幸いです。 slip_no 商品名 個数 単価 請求額 入金額 1 みかん 5 350 1750 1 いちご 3 400 1200 1 2950 2 りんご 5 200 1000 2 いちご 4 400 1600 2 2600 3 りんご 8 200 1600 3 1600 4 みかん 5 350 1750 4 1750 以上、お忙しい中恐縮ですが、宜しくお願い申し上げます。
- ストアドプロシージャが作成されない
●質問の主旨 phpMyAdminのMySQLで ストアドプロシージャの動作確認をしています。 試しに、 delimiter // create procedure pr30() begin select * from tb; select * from tb1l; select * from tb1; end // delimiter ; というプロシージャを作成して、 実行を押しても、画面が全く変化しません。 エラーの表示さえされません。 (もちろんデータベーステーブルのtb、tb1l、tb1が 存在することは確認済みです) また、作成している最中に、 命令文が勝手に消えることもあります。 普通に select * from tb; と、書いていても消えることはないのですが…。 この現象や対策についてご存知の方がいらっしゃいましたら、 アドバイスをお願いします。 ●環境 windows8 xammp1.8.1 phpMyAdmin3.5.2.2 MySQL5.5.27