データベースを構築する最良の方法を探しています。私は、1997 年から 2012 年までの数千社の四半期財務諸表を持っています。各企業には、損益計算書、貸借対照表、キャッシュ フロー計算書の 3 つの異なる計算書があります。
各四半期を合計して、各ステートメントの各項目の年間合計を取得するなど、データに対して計算を実行できるようにしたいと考えています。
これまでに2つの方法を試しました:
1) 独自のテーブルに各明細書の各項目を格納します。つまり、Sales は 1 つのテーブルであり、追跡しているすべての企業の売上データのみを持ち、会社を主キーとし、各四半期のデータを個別の列にします。これはデータを操作する最も簡単な方法のように思えますが、何百ものテーブルがあるため、四半期ごとにデータを更新するのは時間がかかります。
売上表 会社名 q32012 q22012 q12012 ABC社 500 100 202 XYZ社 230 302 202
2) 更新は少し簡単ですが、データの操作が難しいもう 1 つのオプションは、ステートメントごとに会社ごとに個別のテーブルを用意することです。たとえば、Royal Bank の損益計算書には独自のテーブルがあり、プライマリ カラムが明細項目になります。
Royal Bankの損益計算書 Line_Item q32012 q22012 q12012 販売 純利益
ここでの問題は、このデータを年率化しようとすると、グループによる非常に醜い出力が得られることです
SELECT
(CASE WHEN Line_Item = 'Sales' THEN SUM(q4 + q3 + q2 + q1) ELSE '0' END) AS Sales2012,
(CASE WHEN Line_Item = 'NetProfit' THEN SUM(q4 + q3 + q2 + q1)
ELSE '0' END) AS Inventories2012
FROM dbo.[RoyalBankIncomeStatement]
GROUP BY Line_Item
どんな助けでも大歓迎です。