我正在创建一个表,它将使用InnoDB存储引擎在MySQL 5.6中存储大约1亿行。该表将有一个外键,将链接到约500万行的另一个表。用独特的多列索引表格的最佳方法是什么?
当前表结构:
`pid`: [Foreign key from another table]
`price`: [decimal(9,2)]
`date`: [date field]
每pid
应该有一个date
什么是创建这个表索引的最佳途径只有一条记录?
选项#1:添加另一列id
与AUTO_INCREMENT和primary index
和pid
列创建唯一索引和date
pid
和
date
选项#2创建主索引
还是其他选项?
只有我将使用此表上选择查询是:
SELECT pid,price,date FROM table WHERE pid = 123
好的,谢谢我会选择#1 – Badal
如果你打算在索引中包含'date',你可以包括'price'。无论是“pid”,还是全部三列。 –
不,如果我创建一个三列唯一索引,我可能会得到同一日期的重复条目(因为在同一天可能有两个不同的价格)。 – Badal