私は販売のために実際の状態のデータベースを作成する必要があります。問題は種類のプロパティです:私は家を持っている場合、私は種類の説明がありますが、それは土地だけの場合、説明はバスルームの数、領域、フロント範囲などを含む必要はありません値に応じて複数のテーブルを持つMysql内部結合
私は住所、価格などの要素(imoveis)に関する一般的なデータを持つテーブルを作成しました。私は要素のカテゴリ(imoveis_categs)よりも作成しました。私は5つのカテゴリを作成しました。各カテゴリには、その種類の特定の機能を備えたテーブル(例:imoveis_descr2)があります。
データを入力するのは簡単ですが、データをリストするには、クエリ選択を実行していくつかのフィルタに基づいてそれらの要素を見つける必要があります。 PHPでは簡単に解決することができますが、大量のデータとユーザーの要求に対するパフォーマンスが不思議です。 SQLコマンドで解決する方がいいと思っています。しかし、MySQLは、右記述テーブルにimoveisポイントの「categ」フィールド私の領域ではない、私が開始するには、このようなものを想像して...
SELECT * FROM imoveis INNER JOIN imoveis_descr(imoveis.categ) ...
。このようなことは可能ですか?それを行うためには、より適切で効率的な別の方法がありますか?
EDIT:例を明確にしようとしました... EDIT2:例を修正しましたが、「部屋」の列は同じになります。フィールドは排他的なものではなく、アパートとハウスカテゴリの両方に部屋数があります。
Table imoveis
id categ title price address ...
1 2 The House $ 1000000 Somestreet 77
2 1 An Appartment $ 500000 Somewhere 11
3 4 A Land $ 250000 Nowhere 33
Table imoveis_descr1
idImovel rooms area floor ...
2 2 70 5
Table imoveis_descr2
idImovel rooms fieldArea constrArea ...
1 3 120 80
Table imoveis_descr4
idImovel area width height ...
3 2640 22 120
Result
id categ title price address rooms fieldArea constrArea area floor area width height
1 2 The House $ 1000000 Somestreet 77 3 120 80 null null null null null
2 1 An Appartment $ 500000 Somewhere 11 2 null null 70 5 null null null
3 4 A Land $ 250000 Nowhere 33 null null null null null 2640 22 120
あなたの質問は、適切なデータサンプルと期待される結果を追加更新。 – scaisEdge
私はしようとしますが、不規則で大きなテーブルですが、テキストエリアに置くのは簡単ではありません。 – Gustavo