我真的不明白何时应该正常化,什么时候不应该。在这种特定情况下,我有一组业务和一组邮政编码。每个企业都有许多他们服务的邮政编码(通常是两三百个)。为了规范化,我应该有三个表,例如:
businesses - id, address, other data etc.
business_postcodes - business_id, postcode_id
postcode - id, postcode
或者可以只有两个表并将实际的邮政编码放在business_postcodes
表中吗?无论采用哪种方式,有哪些优点/缺点?这取决于我有多少数据?如果这有所不同,我在MySQL中这样做; business_postcodes
表中可能会有大约400万个条目,有些商家在提供的邮政编码中会有很多重叠,尽管有些商家根本没有重叠。