作业帮 > 综合 > 作业

数据库 表中有几个列多行的值是一样的,可以分成两个表时,是单表速度快,还是两表数据快?

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/06 15:58:29
数据库 表中有几个列多行的值是一样的,可以分成两个表时,是单表速度快,还是两表数据快?
 
表A,有几个列中同一单号的值是一样的,可以分成两个表B1和B2,表B2为同个单号唯一性,即B1为同个单号存在多行

 
表B1,一个单号存在多行明细数据

 
 表B2,一个单号只存在一行数据

 
 在以上这种情况下,是单独一个表速度快还是分成两个表速度快.
还有一点,分成两个表联合查询是不是更加麻烦,更加慢?
 
 
 
 
先不说速度,你上面的结构来说最好双表,因为目前你的一单下对多个信息,而每一单的信息是唯一的,可以通过维护一条主单信息来达到日后的改动或是统计,而关联的单号下的多条信息是不同的,这样便于后期维护和开发管理.
当然单表也不一定就快,多表也不一定满,看你的数据量大小和查询的字段是那些以及那些字段设置了索引,没有索引的全表遍历下来数据量大的时候也会很慢,有了索引查询的时候只要合理也会飞快,即便数据量大.
你的思路是可行的,两个表分开,两个表联合查询时,把单号以及日后需要的查询字段设置了索引会大大提高你的程序效率.多思考一下吧,没坏处