私が働いている学校の授業観察システムを書いています。
データベース構造は次のようになります。
私は現在、Observations
テーブルの入力フォームを開発しており、そのフィールドのかなりの数にチェックボックスが必要です。たとえば、Focus
フィールドは任意の 12 個のオプションにすることができます。Positive
およびNegative
フィールドはそれぞれ、ほぼ 20 の任意の数のオプションにすることができます。
上の画像では、 'd 配列VARCHAR
を許可していました。serialize
ただし、特に、データの半複雑な分析を行いたい場合があることを考えると、これが最善のルートであるかどうか疑問に思い始めています(これには、スタッフの各メンバーが持っている属性top 5 staff for a specific positive attribute such as behaviour
の数を数えることが含まれます)テーブル内behaviour
のPositive
フィールド)。Observations
ここに 2 つの質問があります。
- 追加のテーブルを使用する必要がありますか?
Focus
最初のテーブルには 3 つのフィールド(ID
キーと自動インクリメント)Observation_ID
とFocus_ID
. は、 または と という 2 つのフィールドを持つFocus_ID
別のテーブルと関連付けられます。/ には 2 つのテーブル、 /には 3つのテーブルが必要です(オプションは同じですが、ロギングは異なります)。focii
Focus_ID
Title
Focus
Positive
Development
Observations
これらの追加のデータベース テーブルを使用すると、関連するすべてのfocuses
、positives
およびを含むテーブルから情報を取得しようとすると、SQL ステートメントはどのようになりdevelopments
ますか?
前もって感謝します、