一对一关系,一对多关系,多对多关系,分别举两个例子

一对一关系,一对多关系,多对多关系,分别举两个例子,第1张

一、一对一关系举例:

1、每个中国本土居民和他们唯一的身份z编号。

2、每个班级中唯一的班长,每个班长也只服务于唯一的班级。

二、一对多关系举例:

1、一个年级段有多个平行班级,多个平行班都隶属于一个年级段。

2、一个班级有若干个学生,若干个学生隶属于一个班级。

三、多对多关系举例:

1、一个班级有若干个老师,一个老师也可以带若干个班级。

2、一门课程同时有若干个学生选修,一个学生可以同时选修多门课程。

详细解读

以上一对一、一对多、多对多关系隶属于映射。在数学里,映射是个术语,指两个元素的集之间元素相互"对应"的关系,为名词。"映射"或者"投影",需要预先定义投影法则部分的函数后进行运算。因此"映射"计算可以实现跨维度对应。

相应的微积分属于纯数字计算无法实现跨维度对应,运用微分模拟可以实现本维度内的复杂模拟。 映射可以对非相关的多个集合进行对应的近似运算,而微积分只能在一个连续相关的大集合内进行精确运算。

给你举个例子

用户表:

ID Name

1 ABC

2 BCE

3 DEP

用户权限

ID HERF

1 a.asp

2 b.asp

3 c.asp

映射表

用户ID 权限ID 映射表ID

11 1

12 2

13 3

22 4

23 5

31 6

这样用inner join把用户的ID = 映射表的用户ID , 权限表的ID = 映射表的权限ID,查询后你就有这样的结果:

用户Name 权限 用户ID 权限ID 映射表ID

ABC a.asp 1 1 1

ABC b.asp 1 2 2

ABC c.asp 1 3 3

BCE b.asp 2 2 4

BCE c.asp 2 3 5

DEP a.asp 3 1 6

这样用户就和权限形成了多对多的关系!

同理你还可以加上用户组表

用户组表

ID Name

1 组1

2 组2

用户组映射表

用户ID 组ID 组映射表ID

1 1 1

2 1 2

3 1 3

2 2 4

3 2 5

这样用户隶属组就是

用户Name 组Name 用户ID 组ID 组映射表ID

ABC 组11 11

BCE 组12 12

DEP 组13 13

BCE 组22 24

DEP 组23 25

最后,隶属组也可以和权限有映射

用户组权限映射表

组ID 权限ID 组权限映射表ID

111

232

这样,最终这三个用户会具有访问那些页面的权限呢?自己动动脑筋吧。。。如果还不理解可以给我发消息。。。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9946654.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存