Mysql
房地產網站審查的數據庫設計
我正在設計一個房地產網站,並希望從一些專業人士那裡得到關於我提出的數據庫模式的回饋。
我創建了一個包含每個房子的屬性表。多年來,每棟房屋都可以在 property_listings 表下多次掛牌出售。
我在 dbdiagram.io 創建了數據庫圖,因此您可以在此處查看:https ://dbdiagram.io/d/603fc91ffcdcb6230b226f4a
我想知道是否有任何事情看起來像錯過了,或者我做錯了什麼。我通常不設計數據庫。提前感謝您的回饋。
結構看起來很合理。數據類型有一些問題。
- “2-1/2 浴室”在一個
INT
?也許DECIMAL(3,1)
。BIGINT
在大多數情況下是過度的。INT
不適用於latitude
andlongitude
; 認為FLOAT
對於建築物來說已經足夠了。- “蛞蝓”將用於什麼?
- 位置——一些東西(例如“城市”)被標準化;其他的都不是。想想查詢將搜尋什麼;佈局架構時應考慮這一點。
- 有“設施”表嗎?簡單地寫出舒適性可能會更好$$ which, I think has only one ’m’ $$,不必通過“id”。
怎麼樣
- “與公共交通的距離”
- 您已將一些便利設施(臥室和浴室)移至主桌;我建議你將一些比較流行的“要求”移到主表中。這將加快搜尋速度。
我希望你能“走向綠色”,並擁有“太陽能電池板”、“隔熱牆”、“雙層/三層隔熱窗”、“xeriscaped 草坪”、“海拔高度”等設施。
更多的
- 為什麼
property
和property
列表是分開的?- 對於嵌套屬性,重新考慮結構:社區 > 城市 > 郵政編碼 > 省。但是,它們都可能用於搜尋,因此它們可能都在
property
.- 考慮
SET
多達 64 種常見的便利設施——用於通常發生零次或一次的事情。佔用空間很小(inproperty_listing
)- 考慮一個用於收集雜項
FULLTEXT
的列上的索引TEXT
(例如“風車、風暴地窖、後院的筒倉、落基山脈的景色”)location
考慮一個包含所有community
,city
,postal_code
,列的單個表province
,但不包含特定address
和 lat/lng。它減少了表格的數量,但需要多餘的輸入。