ホームページ >データベース >mysql チュートリアル >データベース スキーマは調査システムの条件付き質問をどのように効果的に処理できるでしょうか?
調査システムの条件付き質問のデータベース スキーマ
調査、質問、回答、および可能な回答のテーブルで構成される、提供されたデータベース スキーマ、シンプルな調査システムのニーズに対応します。ただし、条件付き質問を組み込むには、追加の考慮事項が必要です。
条件付きロジックの紹介
条件付き質問をサポートする鍵は、データセットをリンクして質問間の関係を特定することにあります。そしてそれぞれの答え。追加のテーブル QuestionDependency を導入して、これらの依存関係を定義できます。
QuestionDependency テーブル
QuestionDependency テーブルは、特定の質問を表示するための前提条件を確立します。 。これには次の列が含まれます:
例:
「あなたの好きなタバコのブランドは何ですか?」という質問が行われた例を考えてみましょう。 (質問 B) は、「タバコを買いますか?」に「はい」と答えた人にのみ表示されます。 (質問A)。 QuestionDependency テーブルには次のエントリがあります:
DependentQuestionID | PrerequisiteQuestionID | PrerequisiteAnswerID |
---|---|---|
2 | 1 | 1 |
条件付きロジックのデータベース クエリ
条件付きロジックを実装するには、調査システムは QuestionDependency をクエリする必要があります。テーブルを使用して、ユーザーの以前の回答に基づいてどの質問を表示するかを決定します。これは、次のようなクエリを使用して実現できます。
SELECT QuestionID FROM Question WHERE QuestionID NOT IN ( SELECT DependentQuestionID FROM QuestionDependency WHERE PrerequisiteQuestionID = 1 AND PrerequisiteAnswerID = 2 )
このクエリは、質問 A に「いいえ」と回答したユーザーから非表示にする質問の質問 ID のリストを返します。
QuestionDependency テーブルを組み込み、適切なデータベース クエリを実装することにより、提案されたスキーマは、調査システムで条件付き質問をサポートする柔軟かつ効果的な方法を提供します。
以上がデータベース スキーマは調査システムの条件付き質問をどのように効果的に処理できるでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。