Poiché la domanda è se esista o meno una differenza di prestazioni, dipenderebbe dall'indice. Quando fai COUNT (*), utilizzerà le colonne PK per determinare il numero di righe. Se non si hanno indici oltre a un indice cluster sulle colonne PK, eseguirà la scansione dei nodi foglia sull'indice cluster. Probabilmente sono un sacco di pagine. Se si dispone di un indice non cluster che è più magro rispetto all'indice cluster, lo sceglierà invece, risultando in una minore lettura.
Quindi, se la colonna selezionata è contenuta nel più piccolo indice non clusterizzato sulla tabella, SQL Query Optimizer sceglierà quello per entrambi i conteggi () (se si dispone di un ix clusterizzato che è il PK) e contare (indicizzato_colonna). Se scegli un conteggio (indexed_col) contenuto solo in un indice ampio, il conteggio () sarà più veloce se il tuo PK è un indice cluster. Il motivo per cui questo funziona è che esiste un puntatore all'indice cluster in tutti gli indici non in cluster e SQL Server può calcolare il numero di righe in base a tale indice non in cluster.
Quindi, come al solito in SQL Server, dipende. Fai uno showplan e confronta le query tra loro.
a dire il vero non ho trovato quella domanda ma penso che la mia domanda sia leggermente diversa perché riguarda la colonna indicizzata: D grazie – Asha