选择多个城市数据库设计功能实现问题

xiaoxiaoshuaige 2016-06-04 08:34:20
1、注册或者修改资料时用户可以选择多个常驻城市(最多5个)
2、在搜索的时候多选常驻城市,数据源为用户注册修改资料时的常驻城市,获得搜索结果
这个表结构应该如何设计,功能应该如果实现
1、数据库用的MySql,怎么存储这些常驻城市比较方便,现在想到两种方案
(1)用户表中一个字段,按二进制位来存,显然这种方式最大只能用到64个城市,是不能满足需求的,所以要加几个字段,这种方案后观搜索比较简单,但是容量有限,而且1248这程数据对于程序也不友好
(2)另外关联一张常驻城市表,这种方案搜索时需要做表关联,也不太喜欢
(3)在用户表时新增五个字段用于存储用户常驻城市,用or的方式来查询
以前从来没有遇到过这种业务,求大神解答
...全文
357 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
OPPPPOP 2016-06-08
  • 打赏
  • 举报
回复
同楼上 ,第三种方案是最蠢的。 数据库表关联太常用, 反而单表就能实现一个业务数据存储的情况却是极少见
FrendLin 2016-06-08
  • 打赏
  • 举报
回复
最优设计应该是(2),你不喜欢不代表它就不行。另外,用一个字段存储,但是内容可以是多样化的,例如说json格式、分割形式也是小型开发可以考虑的
  • 打赏
  • 举报
回复
不知道数据库字段为啥是二进制 不应该是一个城市存一条数据的吗?

50,527

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧