Count(1) x Count(PK) x Count()
Saiba a diferença entre eles
Post rápido, só para esclarecer a dúvida de um desenvolvedor.
A dúvida era sobre o Count(1)xCount(PK)xCount(*), se realmente tem diferença estes comandos.
Vamos criar um ambiente de teste:
CREATE table Cliente
(
  Codigo int identity(1,1) primary key,
  Nome varchar(50)
)
GO
insert into Cliente values(NEWID())
GO 100000
Agora vamos testar, mas vale lembrar que antes da execução de cada comando deve limpar o cache, com os comandos DBCC DROPCLEANBUFFERS e DBCC FREEPROCCACHE
select COUNT(1) from cliente
select COUNT(Codigo) from cliente
select COUNT(*) from cliente
Muitos desenvolvedores utilizam o count(1) e insistem que é a melhor forma.
Analisando o resultado vemos que apesar de especificar formas diferentes, o SQL sempre interpreta como Count(*) e todos tem o mesmo custo.

Related articles
SQL Update using Try Catch
Na prática com exemplo real
Comando SQL Update usando Try Catch
Na prática e no database
SELECT Format Date Time for many countries
It is a good tip to use day by day
Membership $5/mo
✓ Full articles Subscribe ✓ Write forums ✓ Access podcast ✓ Full jobs opportunities ✓ Access eBooks ✓ Access magazine ✓ Access videos |
Free
✓ Open articles ✓ Read forums ✓ Access podcast x Full jobs opportunities x Access eBooks x Access magazine x Access videos |