https://www.cnblogs.com/MrYuChen-Blog/p/13936680.html

  1. 使用 * 号查询,会查询出多个我们不需要的字段,增加 SQL 执行时间,同时大量的多余字段,会增加网络开销。
  1. 对于无用的大字段,如 varchar、blob、text,会增加 io 操作。
  2. 失去MySQL优化器“覆盖索引”策略优化的可能性
  1. 使用 * 号查询,会查询出多个我们不需要的字段,增加 SQL 执行时间,同时大量的多余字段,会增加网络开销。
  1. 对于无用的大字段,如 varchar、blob、text,会增加 io 操作
  1. 失去MySQL 优化器“覆盖索引”策略优化的可能性

SELECT * 杜绝了覆盖索引的可能性,而基于MySQL优化器的“覆盖索引”策略又是速度极快,效率极高,业界极为推荐的查询优化方式。

例如:有一个表为t(a,b,c,d,e,f),其中,a为主键,b列有索引。