マスターファイル情報と2つの移動履歴テーブル(現在の年と昨年)を含むインベントリテーブルがあります。
クエリを使用して、(たとえば)昨年の6月から今年の3月までの動きをコード、日付の順序で抽出したいと思います。
私はSQLに比較的慣れておらず、これを行うために次のINNERJOIN構造を使用しようとしました。
SELECT Code, Descrip, Category, MLast.Date, MLast.DocNo, MCurr.Date, MCurr.DocNo
FROM Stock AS S
INNER JOIN MoveTrnArc MLast ON MLast.Stockcode = S.Code
AND MLast.Date >='2011/06/01' AND MLast.Date <='2012/03/31'
INNER JOIN MoveTrn MCurr ON MCurr.Stockcode = S.Code
AND MCurr.Date >='2011/06/01' AND MCurr.Date <='2012/03/31'
ORDER BY S.Code
これにより、次の列構造を持つクエリテーブルが作成されます。
Code | Descrip | Category | Date | DocNo | Date | DocNo |
...LASTYearテーブルのデータが最初のDate/DocNo列に表示され、CURRENTYearデータが2番目のDate/DocNo列に表示されます。
各ムーブメントを独自の行に配置するには、クエリに対して何をする必要がありますか、それともこれを実現するためのより優れた、より効率的なクエリがありますか?
また、コードにリストされているムーブメントとそれに続く日付シーケンスが必要です。