我有 2 个表,相同的结构,相同的行,相同的数据,但第一个有更多的列(字段)。
例如:
我从它们中选择相同的 3 个字段(从 mytable1 中选择 a、b、c,然后从 mytable2 中选择 a、b、c)
我试图对 100,000 条记录(每个表)运行这些查询,但最后我得到了相同的执行时间(0.0006 秒)你知道列数(以及最后一张表的大小)吗比另一个大)与查询执行时间有关吗?
我有 2 个表,相同的结构,相同的行,相同的数据,但第一个有更多的列(字段)。
例如:
我从它们中选择相同的 3 个字段(从 mytable1 中选择 a、b、c,然后从 mytable2 中选择 a、b、c)
我试图对 100,000 条记录(每个表)运行这些查询,但最后我得到了相同的执行时间(0.0006 秒)你知道列数(以及最后一张表的大小)吗比另一个大)与查询执行时间有关吗?
从逻辑上讲,它会影响执行时间,如果具有更多列的表上的数据更大,您可能会看到差异。前任。表1:500mb,表2:40mb。性能下降,特别是如果数据集索引不再适合内存。然后磁盘性能介入。
国际海事组织。仅选择正确的列会影响交付时间(从数据库服务器到应用程序服务器)并影响内存,因为应该存储和传输更多数据。
在您的示例中,您从表中选择相同的三列。有几种方法我可以想到有额外的列(但不选择它们)会产生很小/没有影响:
一般来说,更窄的表会给你更好的性能。
如果您想尝试一个示例,请加入一些大的 CHAR(不是 VARCHAR),然后在测试查询中选择这些列。我预计情况会更糟。
希望有帮助。
它会影响执行时间,但我认为列/行大小的线性增加会产生边际效应。由于 MySQL 仍然必须处理/显示额外的数据,所以它不可能有零效应。
关键点(在我看来)是只选择您需要选择的列和行。