0

物件検索・比較サイトを作成しています。データを格納するmysqlテーブルの作成についてサポートが必要です。

必要なテーブルの数と、列見出しにも何を使用すればよいかわかりません。

私はウェブサイトができるだけ正確で完全であることを望みます。

現在住んでいる場所を探していて、検索条件はとてもシンプルなので、このウェブサイトを作成することを思いつきましたが、物件比較ウェブサイトには、検索している物件に関する完全で正確なデータがありません。

テーブルがどのように「正規化」される必要があるのか​​わかりません。たとえば、次のようになります。

表:プロパティ、フィールド:id、address_id、寝室、バスルーム、ガレージ、庭。表:住所、フィールド:address_id、address_line_1、address_line_2、address_line_3、town、city、postcode。

しかし、それでは、家の中の各寝室について詳しく説明し、その寸法などを指定する必要があります。

どんなに小さくても、誰かが何か提案があれば。とても感謝しております。

4

2 に答える 2

1

家の任意のプロパティに対して、すべてに対して1つのテーブルを持つことができます。

CREATE TABLE `property_prop` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`properties_id` INT UNSIGNED NOT NULL ,
`name` VARCHAR( 32 ) NOT NULL ,
`value` VARCHAR( 64 ) NOT NULL ,
PRIMARY KEY ( `id` ) ,
INDEX ( `property_id` )
) ENGINE = MYISAM

INSERT INTO property_prop (properties_id,name,value) VALUES (100,'Spacing','100');
INSERT INTO property_prop (properties_id,name,value) VALUES (100,'Rooms','4');
INSERT INTO property_prop (properties_id,name,value) VALUES (100,'Description','This is a nice house. ;)');

//Get a list of all properties for house with id 100.
SELECT name,value FROM property_prop WHERE properties_id=100;
于 2011-08-21T13:28:25.840 に答える
0

サイトでの優れた高速検索には、SOLRやSphinxなどのスタンドアロン検索サーバーが最適です。あなたの質問について:

Mysqlソリューション。

  1. 説明したようにテーブルを作成します。
  2. 各フィールドのデータをxml形式で保存します。たとえば、フィールドバスルームの場合、次のようなxmlを作成できます

    <rooms number = "3"> <room length = "5" width = "10"> <room length = "7" width = "9"> <rooms>

  3. mysql関数ExtractValue()を介した一部のフィールドの特定の値へのアクセス。http://dev.mysql.com/doc/refman/5.1/en/xml-functions.htmlを参照してください
于 2011-08-21T15:52:40.610 に答える