自分のウェブサイトのレポートを作成していて、さまざまな場所の不動産価格を一覧表示しています。次のような表があります。
CREATE TABLE report(report_id INT NOT NULL PRIMARY KEY AUTO_INCREMENT NOT NULL、 場所VARCHAR(255)、 日付VARCHAR(255)、 ratepersqft INT);
私は以下のような値を表に持っています
INSERT INTO report(Locations, date, ratepersqft)
VALUES('Location A', '2012-01-16', 2500),
('Location B', '2012-01-21', 1750),
('Location C', '2012-01-20', 1650),
('Location C', '2012-02-19', 2100),
('Location A', '2012-02-18', 2560),
('Location B', '2012-02-12', 1790),
('Location C', '2012-03-04', 2250),
('Location A', '2012-03-25', 2680),
('Location B', '2012-03-05', 2540),
('Location A', '2012-08-21', 2870),
('Location C', '2012-09-12', 2150),
('Location B', '2012-10-18', 2760);
場所| 月| RatePerSqFt
Location A Jan 2500
Location A Feb 2560
Location A March 2680
Location A August 2870
Location A sept 2870
Location A oct 2870
Location B Jan 1750
Location B Feb 1790
Location B March 2540
Location B August 2540
Location B sept 2540
Location B oct 2760
Location C Jan 1650
Location C Feb 2100
Location C March 2250
Location C August 2250
Location C sept 2250
Location C oct 2760
表で利用可能なすべての可能なデータの値をプロットしたいと思います。テーブルロケーションAには10月のエントリがありませんが、ロケーションBには10月のエントリがあるため、ロケーションAの最後に登録された月の8月のレートで出力テーブルにエントリが必要です。
したがって、2870として表示されます。
同様に、ロケーションBには8月のエントリがありませんが、ロケーションAには8月のレートがあるため、ロケーションBを持ってきて、先月のレートである2540を入力します。
Cについても同じです。
上記のクエリまたはプロシージャの記述方法