Sql 数据库索引可以跨表吗?I';我是博士后
是否可以创建一个索引,其中一个列的值来自另一个表 例如:Sql 数据库索引可以跨表吗?I';我是博士后,sql,ruby-on-rails,indexing,Sql,Ruby On Rails,Indexing,是否可以创建一个索引,其中一个列的值来自另一个表 例如: model Pet primary_key id foreign_key Species end model Species primary_key id int genus end 假设物种种类很多,属的种类较少。我想在Pets表上按属创建一个索引。能做到吗 如果是这样的话,如果您能为我指出在Rails迁移中如何做到这一点的正确方向,我将不胜感激。否。在任何关系数据库技术中,“索引”是指表的索引。您可以将这两者结合起来
model Pet
primary_key id
foreign_key Species
end
model Species
primary_key id
int genus
end
假设物种种类很多,属的种类较少。我想在Pets表上按属创建一个索引。能做到吗
如果是这样的话,如果您能为我指出在Rails迁移中如何做到这一点的正确方向,我将不胜感激。否。在任何关系数据库技术中,“索引”是指表的索引。您可以将这两者结合起来,如下所示: ANIMAL_CLASS + name + id + LEVEL + parent_id 动物类 +名字 +身份证 +水平仪 +家长id
其中level逻辑上是{种,属,…}的枚举我不知道postgres,但我认为这是不可能的。你可以通过使用物种FK来创建索引,但这对你没有帮助,因为真正的属列应该是属表的FK。不完全是。Oracle支持位图联接索引,即为子表上父表的属性编制索引。它旨在消除星型转换查询中星型/雪花型模式的IO。因此,在这种情况下,甲骨文可以在宠物表中对物种、属进行索引,因为每只宠物最多有一个属。