select * 和 select 字段的区别

参考文章:https://mp.weixin.qq.com/s/whCprUTlrhtgyTCIUyIJ3A

自己总结如下:
1、select * 和 select 字段在性能上没有什么差别

2、网络IO问题
select * 会查出所有的字段,有些是不需要的,当应用程序和服务器不在同一个局域网时,字段过多会影响网络传输的性能

3、索引问题

select col1 from table;
select * from table;

在col1字段有索引的情况下,mysql是可以不用读data,直接使用index里面的值就返回结果的。
但是一旦用了select *,就会有其他列需要读取,这时在读完index以后还需要去读data才会返回结果。这样就造成了额外的性能开销

原文地址:https://www.cnblogs.com/lmj612/p/10518940.html