来到这家公司,迭代了个遗留的快被抛弃的社交软件,然后主要任务就是设计并从零完成一个服务于互联网用户以及关联代理商家的购物软件.因为公司需要在购物及代理商拿货中集成分销系统,最高可以返利3级,于是我设计了如下的用户模块;
选用的关系型数据库是MySQL,其实像这种父子关系可以使用树形结构的数据库比如Elasticsearch等;MySQL不适合记录树形结构比如JSON结构这种,但是可以冗余记录用户之间的父子关系;
(1)用户表的设计,就是最基础的一些属性:
id | parent_id | name |
主键 | 父级主键 | 名称 |
用户父子关系表可以这样设计:
id | user_id | parent_id | level |
主键 | 用户主键 | 用户父级主键 | 父子等级 |
(2)比如新增几个用户: