Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

mysql COUNT(*) vs COUNT(DISTINCT col)


Se a coluna for indexada, COUNT(DISTINCT id) só precisa retornar o número de itens no índice da coluna. COUNT(id) tem que somar o número de linhas para as quais cada entrada de índice aponta ou varrer todas as linhas.

Para sua segunda pergunta, consulte count(*) e count(column_name), qual é a diferença? . Na maioria das vezes, COUNT(*) é o mais adequado; existem algumas situações, como a contagem de linhas unidas com uma junção externa, em que você precisa usar COUNT(columnname) porque você não quer contar as linhas nulas.