用于创建1:多索引关系的SQLite表结构

时间:2016-12-19 14:14:11

标签: sqlite indexing table-structure

问题 无法创建具有引用表中多行的索引列的表。下面是我想要创建的图片示例。

概述 想象一下(SQLite)表将持有股票股息支付。索引列设置为股票代码。但是,每个股票代码符号指的是多个记录,这些记录由时间戳组织。关于SQLite和大约15个其他教程的文档似乎都集中在索引与索引和记录之间始终存在1:1关系的索引上。我想创建一个1:many关系的索引。

查找将按符号找到适当的库存,然后(可能)在第一列中的日期找到二级索引。但我找不到其他人试图建立这种结构的例子。让我想到也许我没有正确的方法,或者这只是一个特例。

Example Table Structure

1 个答案:

答案 0 :(得分:0)

我不认为你的问题实际上是一个问题。在列上放置索引并不意味着它必须包含唯一值。索引列中的值重复是完全合理的。当然收益递减。例如。如果一列中有一百万行且只有五个不同的值,那么该列上的索引对您来说并不会有太大作用。

一个好的经验法则是从你在where子句中使用的列开始索引。然后运行查询,看看你是否获得了满意的表现。