日付パラメーター間でのみ最初のインスタンスと最後のインスタンスを抽出するクエリが必要です。を介してテーブルに
リンクされたfinancialyearenddateフィールドを持つ財務情報を記録するテーブルがあります。各企業もテーブルにリンクされており、複数のプログラムを持つことができます。最初と最後のインスタンス (MIN と MAX を使用) のみをプルするように調整した特定のプログラムで各企業の財務をプルするレポートがありますが、最初のインスタンスが必要です。特定の日付パラメーターの後、および特定の日付パラメーターの前の最後のインスタンス。 Company
companyID
programme
例: 会社 ABloggs には 1999 年、2000 年、2001 年、2004 年、2006 年、2007 年、2009 年の財務がありますが、プログラムは 2001 年から 2007 年まで実行されたので、それらの年の間の最初の財務記録と最後の財務記録、つまり 2001 年と 2007 年の記録のみが必要です。どんな助けでも感謝します。急いでデータが必要だったので、現時点では2つのクエリを使用していますが、1つのクエリで必要であり、会計年度の終了日がパラメータ間にあり、会社のGVAレコードが2つ以上ある場合にのみ必要です。
クエリ1 :
SELECT
gva.ccx_companyname,
gva.ccx_depreciation,
gva.ccx_exportturnover,
gva.ccx_financialyearenddate,
gva.ccx_netprofitbeforetax,
gva.ccx_totalturnover,
gva.ccx_totalwages,
gva.ccx_statusname,
gva.ccx_status,
gva.ccx_company,
gva.ccx_totalwages + gva.ccx_netprofitbeforetax + gva.ccx_depreciation AS GVA,
gva.ccx_nofulltimeequivalentemployees
FROM
(
SELECT
ccx_companyname,
MAX(ccx_financialyearenddate) AS LatestDate
FROM Filteredccx_gva AS Filteredccx_gva_1
GROUP BY ccx_companyname
) AS min_1
INNER JOIN Filteredccx_gva AS gva
ON min_1.ccx_companyname = gva.ccx_companyname AND
min_1.LatestDate = gva.ccx_financialyearenddate
WHERE (gva.ccx_status = ACTUAL)
クエリ 2:
SELECT
gva.ccx_companyname,
gva.ccx_depreciation,
gva.ccx_exportturnover,
gva.ccx_financialyearenddate,
gva.ccx_netprofitbeforetax,
gva.ccx_totalturnover,
gva.ccx_totalwages,
gva.ccx_statusname,
gva.ccx_status,
gva.ccx_company,
gva.ccx_totalwages + gva.ccx_netprofitbeforetax + gva.ccx_depreciation AS GVA,
gva.ccx_nofulltimeequivalentemployees
FROM
(
SELECT
ccx_companyname,
MIN(ccx_financialyearenddate) AS FirstDate
FROM Filteredccx_gva AS Filteredccx_gva_1
GROUP BY ccx_companyname
) AS MAX_1
INNER JOIN Filteredccx_gva AS gva
ON MAX_1.ccx_companyname = gva.ccx_companyname AND
MAX_1.FirstDate = gva.ccx_financialyearenddate
WHERE (gva.ccx_status = ACTUAL)