不知道怎么简说,直接详说吧。
比如现在有一个订单表,有字段发货人id。现在的实际情况,经常会用到需要按照发货负责人进行查询订单,所以需要先找负责人下的发货人,再去查找订单。
假设用户表非常大,订单表也是数据量非常大,所以在订单表里面直接加了个发货负责人字段,于是省去了连表查,请问这样效率有更高吗,高多少?这样设计是否合理?
迷茫2017-02-23 10:00:20
这样做效率肯定会高,单表查询肯定比联表查询效率高,尤其是在数据量很大的时候,因为多表联合查询指不定用到什么,譬如using temporary。具体可以explain。单表的话建立合适的索引查询速度是很快的。至于这样设计是否合理。有的时候是很合理的。往往来说设计优秀的表结构也是一项很重要的事情。通过增加一个字段来提高查询的效率有的时候也是一种解决方案。至少我自己也这么做过。也见别人做过。只是不要这样滥用。其实针对具体项目也不会有很多种这种情况。所以如果能提高效率的话,这样用也没问题。