1

不動産の記録を集めるためのメインテーブルがあります。このテーブルは他の参照データテーブルと関係があるため、要約すると、次のIDが含まれています。

  • CountryId
  • TypeId
  • PurposeId
  • CurrencyId
  • 等...

国、タイプ、目的などの他のテーブルがあります...

「タイプ」に基づいて新しい不動産レコードを作成する場合、いくつかの「拡張プロパティ」が定義されます。したがって、ユーザーは、選択した「タイプ」に直接リンクされている「拡張プロパティ」の値を入力する必要があります。

拡張プロパティの例:次のようなもの。

  • ベッドルーム

このプロパティには、次のような1つ以上の値が含まれる場合があります。

  • 1
  • 2
  • 3

1つのプロパティに1つ以上の値がある可能性があるため、拡張プロパティのテーブルと拡張プロパティ値のテーブルを保存しています。

特定のタイプに対して、そのようなプロパティが1つ以上ある可能性があるため、リンクする新しいテーブルを定義する必要がありました。

  • 不動産ID
  • ExtendedProperty ID
  • ExtendedProperty値ID

現在、Webサイトは検索エンジンを提供しており、ユーザーは次のフィールドに検索条件を入力できます。

  • タイプ
  • 目的
  • 1つ以上の拡張プロパティ(選択したタイプとそれに関連するプロパティに基づく)

DBにクエリを実行し、完全なデータレコードを返す必要があります。つまり、不動産レコードを返す場合は、TypeID+TypeNameやCountryID+CountryNameなどを返す必要があります。つまり、これらすべてのテーブルを結合し、次に、検索条件から受け取った値を使用してクエリを実行します。このような条件は、次のようになります。

  • CountryId = 1
  • タイプ=2
  • EP(1,5)(IDが「1」の拡張プロパティを持ち、そのプロパティの値が「5」の拡張プロパティ値IDに等しい不動産レコードを見つけてください。
  • など..。

他のすべてのテーブルは、通常の結合といくつかのパラメーターのチェックの問題だと思いますが、拡張プロパティをクエリする必要がある場合は難しくなります。

とても有難い。

4

0 に答える 0