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

    xiaoxiao2021-04-17  33

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

    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  无索引列 的执行代价要小很多  操作的数据量也少很多  查询的时间要少很多

    转载请注明原文地址: https://ju.6miu.com/read-673236.html

    最新回复(0)