良い一日。
SQLクエリでこの問題によってブロックされています:
次の表があるとします。
CREATE TABLE `Forecasted_Sales_tcl`( `DEALER_id` varchar(15)NOT NULL、 `SALES_period`の日付はNULLではなく、 `TYPE` int(2)NOT NULL、 `UNIT_SALES` int(6)DEFAULT NULL、 `HEAD_OFFICE_CODE` varchar(15)DEFAULT NULL 主キー( `DEALER_CODE`、` SALES_MONTH`、 `TYPE`) )ENGINE = InnoDB DEFAULT CHARSET = latin1;
http://sqlfiddle.com/#!2/b780c
今後数か月以内に可能な販売料金を生成する必要があります。たとえば、ある店舗で1か月(SALES_period)の「2012年6月」のアウトバウンド売上(unit_sales)をプロットしました。2012年8月にタイプA、2012年10月にタイプB、2012年12月にタイプCのサービス料金が発生することを期待しています。また、さまざまな店舗で、さまざまな月にアウトバウンド販売があります。
次のようなレポートを生成しようとしています。
期間|料金A| チャージB|チャージC| store_id 2012年1月| X | Y | Z | (id) 2012年2月| :| :| :: 2012年3月| :| :| :: 2012年4月| :| :| :: 2012年5月| :| :| :: 2012年6月| :| :| :: 2012年7月| :| :| :: 2012年8月| :| :| :: 2012年9月| :| :| :: 2012年10月| :| :| :: 2012年11月| :| :| :: 2012年12月| :| :| ::
Xはストアのunit_sales(2か月前)の合計(id)Yはストアのunit_sales(4か月前)の合計(id)Zはストアのunit_sales(6か月前)の合計(id)
SQLフィドルといくつかのパラメーターに関する上記のデータが与えられた場合:レポートの生成:From:2012-06 To:2013-07
期間| ディーラーID| チャージX| チャージB| チャージC| 2012-06 | 0001 | 0 | 0 | 0 | 2012-07 | 0001 | 0 | 0 | 0 | 2012-08 | 0001 | 100 | 0 | 0 | 2012-09 | 0001 | 0 | 0 | 0 | 2012-10 | 0001 | 0 | 100 | 0 | 2012-11 | 0001 | 0 | 0 | 0 | 2012-12 | 0001 | 0 | 0 | 100 | 2013-01 | 0001 | 0 | 0 | 0 | 2013-02 | 0001 | 0 | 0 | 0 | 2013-03 | 0001 | 0 | 0 | 0 | 2013-04 | 0001 | 0 | 0 | 0 | 2013-05 | 0001 | 0 | 0 | 0 | 2013-06 | 0001 | 0 | 0 | 0 | 2013-07 | 0001 | 0 | 0 | 0 | 期間| ディーラーID| チャージA| チャージB| チャージC| 2012-06 | 0002 | 0 | 10 | 2 | 2012-07 | 0002 | 0 | 0 | 0 | 2012-08 | 0002 | 10 | 0 | 0 | 2012-09 | 0002 | 18 | 0 | 0 | 2012-10 | 0002 | 5 | 10 | 0 | 2012-11 | 0002 | 0 | 18 | 0 | 2012-12 | 0002 | 0 | 5 | 10 | 2013-01 | 0002 | 0 | 0 | 18 | 2013-02 | 0002 | 0 | 0 | 5 | 2013-03 | 0002 | 0 | 0 | 0 | 2013-04 | 0002 | 0 | 0 | 0 | 2013-05 | 0002 | 0 | 0 | 0 | 2013-06 | 0002 | 0 | 0 | 0 | 2013-07 | 0002 | 0 | 0 | 0 |
この10は販売用(2012-04)で、2は販売用(2012-02)です。
期間| ディーラーID| チャージA| チャージB| チャージC| 2012-06 | 0003 | 0 | 0 | 0 | 2012-07 | 0003 | 0 | 0 | 0 | 2012-08 | 0003 | 1 | 0 | 0 | 2012-09 | 0003 | 0 | 0 | 0 | 2012-10 | 0003 | 0 | 1 | 0 | 2012-11 | 0003 | 0 | 0 | 0 | 2012-12 | 0003 | 0 | 0 | 1 | 2013-01 | 0003 | 0 | 0 | 0 | 2013-02 | 0003 | 0 | 0 | 0 | 2013-03 | 0003 | 0 | 0 | 0 | 2013-04 | 0003 | 0 | 0 | 0 | 2013-05 | 0003 | 0 | 0 | 0 | 2013-06 | 0003 | 0 | 0 | 0 | 2013-07 | 0003 | 0 | 0 | 0 |マスターレポート
| 2012-06 | 2012-07 | 2012-08 | 2012-09 | 2012-10 | 2012-11 | ディーラーID| チャージA| チャージB| チャージC| チャージA| チャージB| チャージC| チャージA| チャージB| チャージC| チャージA| チャージB| チャージC| チャージA| チャージB| チャージC| チャージA| チャージB| チャージC| 001 | 0 | 0 | 0 | 0 | 0 | 0 | 100 | 0 | 0 | 18 | 0 | 0 | 0 | 100 | 0 | 0 | 18 | 0 | 002 | 0 | 10 | 2 | 0 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 003 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
助けてくれてありがとう。