我正在创建一个数据库,我不确定设计表的最佳方法。我有一个房地产属性表,我想存储有关这些属性的信息 - 例如卧室,浴室,大小......如果看起来有用,我可能会在将来存储其他信息 - 例如最后购买价格或建造日期,所以我需要灵活添加。
为每个"特征"创建一个单独的表是否更好?或者有一张具有所有特征的表格?分离这些特征似乎更简洁,但更容易编程以获得一个表。
特征表
id property_id characteristic value
1 1 bedrooms 3
2 1 bathrooms 2
3 1 square feet 1000
4 2 bedrooms 2
...
OR
BEDROOM TABLE
id property_id bedrooms
1 1 3
2 2 2
...
浴室桌
id property_id bathrooms
1 1 2
...
请原谅我,如果这是一个愚蠢的问题,我对数据库设计的了解非常基础。
答案 0 :(得分:0)
我建议你的两个建议之间存在中间立场。我会做的袖口
属性表(UID地址zip其他唯一标识属性)
房间表(UID,propertyID,房间类型,房间大小,楼层,形状,颜色,完成,其他roo具体细节等)。
物业详情(uid,propertyID,地段大小,学区,成本,税率,其他整个物业详情)
最后一两个历史记录表,例如
物业销售历史(UID,PropertyID,salesdate,saleprice,销售原因等)
通常只是通过“匹配”逻辑对数据进行分组可以产生良好的结果....只需要考虑表的1to1和1到多少关系需求。
答案 1 :(得分:0)
我专注于此:
"我有一张房地产资产表"
现在据我所知,你必须是另一种类型:
Houses
Bedrooms
Comfort room and so on.
进一步说明: 你必须是一张表:
1. House type
2. House names,description,housetypeid,priceid,bedroomid,roofid,comfortroomid and any other that related to your house.
3. Bedroom type
4. Comfort room type
5. Dining type
6. roof type if it has.
7. House prices
8. Bathroom type
类似的东西。
答案 2 :(得分:0)
一个包含几列的表格:
价格,#br,#bath,FR,DR,sqft和少量其他常用选中属性的列。然后是一个包含所有其他信息的JSON列(2个洗碗机,水疗中心,海景等)。
对单独的列使用WHERE
子句,然后在客户端代码中完成过滤,这样可以更容易地查看JSON。