35日間のデータをdbテーブルに保存する必要があるという要件があります。データは計算にのみ使用され、取得には使用されません(select query where句では使用されません)。
テーブルを35列としてテーブルに配置することが、テーブルを設計する唯一の方法ですか?または、他の効果的な設計アプローチに従うことができますか?
注:ここではSQL Serverが使用されており、このテーブルにはFKがあります。
35日間のデータをdbテーブルに保存する必要があるという要件があります。データは計算にのみ使用され、取得には使用されません(select query where句では使用されません)。
テーブルを35列としてテーブルに配置することが、テーブルを設計する唯一の方法ですか?または、他の効果的な設計アプローチに従うことができますか?
注:ここではSQL Serverが使用されており、このテーブルにはFKがあります。
一度に 35 個のフィールドすべてにアクセスする必要があり、追加のフィールドが必要ないことがわかっている場合は、35 列のテーブルが最適な設計になる可能性があります。
または、次のようなことを試すこともできます。
CHECK (DAY_NO >= 1 AND DAY_NO <= 35)
JOIN の価格については、これにより、日数を変更する必要がある場合に備えて、もう少し柔軟性が得られる可能性があります。CHECK を変更するだけです。また、大部分の日が NULL である場合、これはスペース効率がわずかに高くなる可能性があります。