主键、索引的困惑
平时建表都会习惯性创建主键,但总会忘记索引。其实是对索引不确定。有几个小白问题请教,请各位指点
场景:开发超市收银系统,创建零售信息表,很自然会创建一个流水号作为主键以便于和其它表联接(例如零售明细表)。但是实际运用时,作为主键的流水号很少会在where中出现,反而是创建时间。例如查销量,统计某个商品销售情况,生成销售报表等。这时觉得如果在创建时间上创建一个过索引会不会要好一些,但查到的资料都提醒说,创建索引后查询会加快,但 Insert 会更加费时。
这样我就矛盾了,对于超市,收银时的 Insert 是很频繁的,但后台管理时,各种报表对销量的查询也是很频繁的。
各位帮忙分析一下要不要创建这个过引。
大概表结构
零售信息表
字段:零售ID(PK),创建时间,.....(其它信息)
零售明细表
字段:零售ID,商品条码,销售数量,......(其它信息)