私はいくつかのデータを持っています。これは、追跡された供給の毎日(毎日)の終値であり、日付(日付)、PXLast(その日の終値))の2つの列を持つ1つのMS Accessテーブルにあります。1991 年 1 月から 2013 年 8 月までの毎日のデータがあり、次のように、昨年末と比較した各年末の PXLast の変化率を取得したいと考えていました。
年 | 年 | PXLastの変化率(前年比)
1991年 | 15.2% 1992年 | 9.2%
年の終了日はさまざまで (常に 31 日とは限りません)、次の方法で最後の PXLast 値を取得しようとしています。
1. 毎年 12 月の最大日付を取得します。結果は MyYear、MyMonth、MyDay になります。
2.DateSerial(MyYear, MyMonth, MyDay)で結合
3.結果のクエリをテーブルに結合し、日付列で内部結合します
4.PXLast 値を取得する
SELECT EndDates.EndDates, NSE20.PX_LAST AS LookPoint
FROM NSE20 INNER JOIN
(SELECT DateSerial([MyYear],[MyMonth],[MyDay])
AS EndDates FROM (SELECT 12 AS MyMonth, MyDay, MyYear FROM
(SELECT Max(Day([Dates])) AS MyDay, Year([Dates]) AS MyYear
FROM NSE20 WHERE (((Month([Dates]))=12))
GROUP BY Year([Dates])) AS EndYearValues)
AS EndValueDates)
AS EndDates ON NSE20.Dates = EndDates.EndDates;
前年末のクエリを使用して対応する値を取得するのを手伝ってくれる人はいますか
たとえば、2006 年 12 月 29 日の場合、現在の値を表示し、2005 年 12 月 31 日の値を表示する必要があります。
同じ行にすなわち
年 | 年 | 現在の年末| 前年度末
2005年 | 3449.00 | 4611.19
2006年 | 9.2% |3449.00
どんな助けでも大歓迎です。
これを行うためのより良い方法への提案は大歓迎です....