select *与select 无索引列以及select 有索引列的比较

-------------------------在数据量少的表中查看执行计划--------------------------

select * 的执行计划

select  无索引列的执行计划

select 有索引列执行计划


查看 执行计划
select *                  cost:3   bytes:785    
select  有索引列   cost:1  bytes:15

select  无索引列   cost:3   bytes:25

---------------------在数据量较大的表中180万 查看执性计划--------------------------------------------------------------------

select * 的执行计划

select 有索引的列的执行计划

select 无索引的列 的执行计划

查看执行计划

select  *                    Bytes: 2232M        Cost  :   101k             Time: 00:20:15

select 有 索引列     Bytes:  15M          Cost  :   2146             Time:   00:00:26

select 无索引列      Bytes:  44M          Cost  :   100k               Time:  00:20:12

-------------------------------------------------------------------------------总结-----------------------------------------------------------------------------------------------------------------

在数据量不大的表中 如果列没有索引 select id  和select * 执行的代价是一样的 但是操作的数据量不同
如果列有索引 那么select id 比select * 以及select  无索引列的执行代价要小很多  操作的数据量也少很多

在数据量较大的表中    select  id 比select * 执行的代价要低  操作的数据量要少 查询的时间要少

如果列有索引 那么select 有索引列 比select *以及select  无索引列 的执行代价要小很多  操作的数据量也少很多  查询的时间要少很多


————————————————
版权声明:本文为CSDN博主「tiegenZ」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/tiegenZ/article/details/70170084

posted @ 2020-07-02 11:39  KJXY  阅读(430)  评论(0)    收藏  举报