DBMS 中的基数,在 DBMS 中,您可以在两个不同的地方听到基数术语,它也有两种不同的含义。
在数据模型的背景下:
就数据模型而言,基数是指两个表之间的关系。如实体关系指南中所见,关系可以是四种类型:
- 一对一 – 第一个表的单行与第二个表的单行相关联。例如,人与护照表之间的关系是一对一的,因为一个人只能拥有一本护照,而护照只能分配给一个人。
-
一对多 – 第一个表的单行与第二个表的多行相关联。例如,客户和订单表之间的关系是一对多,因为客户可以下多个订单,但单个订单只能属于一个客户。
-
多对一 – 第一个表的多行与第二个表的单行相关联。例如,学生和大学表之间的关系是多对一的,因为大学可以有很多学生,但学生一次只能在一所大学学习。
-
多对多 – 第一个表的多行与第二个表的多行相关联。例如,学生和课程表之间的关系是多对多的,因为学生可以一次学习很多课程,并且可以将课程分配给许多学生。
在查询优化的上下文中:
在查询方面,基数是指表中列的唯一性。具有所有唯一值的列将具有高基数,并且具有所有重复值的列将具有低基数。这些基数得分有助于查询优化。