【发布时间】:2016-08-08 05:42:01
【问题描述】:
我有 2 个表,用户(~1000 个用户)和国家(~50 个国家)。一个用户可以支持很多国家,所以我打算创建一个映射表 user_country。但是,由于我有 1000 个用户和 50 个国家/地区,因此该表最多有 50000 个条目。这是实现此功能的最佳方法还是有更合适的方法?
如果这是最好的方法,我如何仅使用一条 SQL 语句将支持多个国家/地区的用户添加到此表中? 例如:
INSERT INTO user_country(userid, countrycode)
VALUES ('user001','US'),
('user001','PH'),
('user001','KR'),
('user001','JP')
如果用户支持所有 50 个国家/地区,上述 SQL 语句将太长。我必须为 1000 个用户做这件事。任何人都知道最有效的实现方式吗?
【问题讨论】:
-
Optimal many-to-many schema 。最佳
country_code:CHAR(2) CHARACTER SET ascii.
标签: mysql database database-design many-to-many relational-database