people
というテーブルとpeople_attributes
というテーブルがあります。多くの属性を持つテーブルデザインですか?
私のサイトの人々は、青い目、茶色の髪、薄いのようなさまざまな属性を提出し、属性を持つすべてのユニークな人物を返す必要があります。
私のテーブルデザインに苦しんでいます。 people
テーブルの1人は多くの属性を持つことができます。各人の属性を人のテーブルにどのように保存する必要がありますか?
属性の型とそのIDを持つユーザーのIDで別のテーブルを作成する必要がありますか?
しかし、この考え方では、属性には多くの人がいる可能性があります。多くの人物が接続された属性を保存するにはどうしたらよいですか?コンマで区切られたリスト?しかし、私はそれをどのように探しますか?そして、私はどのようにしてユニークな人々だけを返しますか?私は青い目と茶色の髪を探していた場合、カテゴリの青い目は人1を持ち、茶色の髪になります。したがって、クエリは2人の1を返すでしょう。
SQLない人々が繰り返さ大量のデータを持っている属性テーブルではないでしょうか?だから、もし人1が、背の高い、灰色の髪、青い目、属性を持っているなら、眼鏡をかける...それは4行ではないでしょうか?または、すべての属性を1つの行に配置できますか? – beans
はい、4つの行があります...それぞれはその人に固有です。 1列にすべてのデータがある場合は、グレーの髪の人、眼鏡をかけた人、背の高い人をどのように検索しますか? – xQbert