RDBMS 一对一关系更高效的查找?
RDBMS one-one relationship for more efficient look up?
最上面的数据库是最简单的,但是要根据员工 ID 查询员工是否素食,它必须处理整个员工列表。
下面的两个数据库可以让你简单的检查Vegetarian
table中是否存在员工ID,如果素食者列表比员工列表小得多,这会更快.
这是common/acceptable的做法吗?
在最底层的数据库中,我还添加了一个引用 Vegetarian
table 的外键,以允许 O(1) 检查素食状态(如果不是素食,键值将为空)如果我们已经有了员工记录。
您可以使用最顶层结构——单个 table——在 isVegetarian=True 上使用部分索引。该索引将很小,并提供与您的第二个结构相同的好处。
最上面的数据库是最简单的,但是要根据员工 ID 查询员工是否素食,它必须处理整个员工列表。
下面的两个数据库可以让你简单的检查Vegetarian
table中是否存在员工ID,如果素食者列表比员工列表小得多,这会更快.
这是common/acceptable的做法吗?
在最底层的数据库中,我还添加了一个引用 Vegetarian
table 的外键,以允许 O(1) 检查素食状态(如果不是素食,键值将为空)如果我们已经有了员工记录。
您可以使用最顶层结构——单个 table——在 isVegetarian=True 上使用部分索引。该索引将很小,并提供与您的第二个结构相同的好处。