Pergunta

Estrutura da tabela de exemplo:

Id, Integer (PK)
Name, Varchar(100)
Description, Text

Eu preciso saber se existe diferença no desempenho entre:

SELECT COUNT(*) FROM Example;

e

SELECT COUNT(Id) FROM Example;

Ou não existe diferenças?

Foi útil?

Solução

Existem diferenças no desempenho e no conjunto de resultados reais

Desempenho da função Count SQL

Outras dicas

Verifique o plano de explicação: o resultado vem da tabela ou dos meta dados (por exemplo, informação_schema)?: As diferenças provavelmente serão muito mínimas.

Eu acreditaria que há uma diferença; Dependendo do tamanho da sua mesa, pode ser insignificante ou pode ser significativo.

Este é provavelmente o mais lento: selecione contagem (*) do exemplo
Isso é no meio: selecione contagem (id) do exemplo
Isso seria mais rápido: selecione contagem (1) do exemplo

Vale a pena ler, mas infelizmente em russo.

Conde (*), poderia ser mais rápido?

O conto é isso COUNT(*) não é tão eficiente como acesso direto ao dm_db_partition_stats.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top