sp_createstats (Transact-SQL)

Si applica a:SQL ServerDatabase SQL diAzure Istanza gestita di SQL di Azure

Chiama l'istruzione CREATE STATISTICS per creare statistiche a colonna singola sulle colonne che non sono già la prima colonna di un oggetto statistiche. La creazione di statistiche di colonna singola aumenta il numero di istogrammi, con un conseguente miglioramento delle stime della cardinalità, dei piani di query e delle prestazioni di esecuzione delle query. La prima colonna di un oggetto statistiche include un istogramma, mentre le altre colonne non dispongono istogrammi.

sp_createstats è utile per applicazioni quali quelle di benchmarking quando l'ora di esecuzione delle query è critica e non è possibile attendere la generazione delle statistiche di colonna singola da parte di Query Optimizer. Nella maggior parte dei casi, non è necessario usare sp_createstats; Query Optimizer genera statistiche a colonna singola in base alle esigenze per migliorare i piani di query quando l'opzione AUTO_CREATE_STATISTICS è attivata.

Per altre informazioni sulle statistiche, vedere Statistiche. Per altre informazioni sulla generazione di statistiche a colonna singola, vedere l'opzione AUTO_CREATE_STATISTICS in Opzioni ALTER DATABASE SET (Transact-SQL).

Convenzioni di sintassi Transact-SQL

Sintassi

  
sp_createstats   
    [   [ @indexonly =   ] { 'indexonly'   | 'NO' } ]   
    [ , [ @fullscan =    ] { 'fullscan'    | 'NO' } ]   
    [ , [ @norecompute = ] { 'norecompute' | 'NO' } ]  
    [ , [ @incremental = ] { 'incremental' | 'NO' } ]  

Argomenti

[ @indexonly = ] 'indexonly' Crea statistiche solo sulle colonne che si trovano in un indice esistente e non sono la prima colonna in alcuna definizione di indice. indexonly è char(9). e il valore predefinito è NO.

[ @fullscan = ] 'fullscan' Usa l'istruzione CREATE STATISTICS con l'opzione FULLSCAN . fullscan è char(9). e il valore predefinito è NO.

[ @norecompute = ] 'norecompute' Usa l'istruzione CREATE STATISTICS con l'opzione NORECOMPUTE . norecompute è char(12). e il valore predefinito è NO.

[ @incremental = ] 'incremental' Usa l'istruzione CREATE STATISTICS con l'opzione INCREMENTAL = ON . Incremental è char(12). e il valore predefinito è NO.

Valori del codice restituito

0 (operazione completata) o 1 (operazione non riuscita)

Set di risultati

Il nome dei nuovi oggetti statistiche corrisponde a quello delle colonne su cui sono stati creati.

Osservazioni:

sp_createstats non crea o aggiorna statistiche sulle colonne che rappresentano la prima colonna di un oggetto statistiche esistente; Sono incluse la prima colonna di statistiche create per gli indici, le colonne con statistiche a colonna singola generate con AUTO_CREATE_STATISTICS opzione e la prima colonna di statistiche create con l'istruzione CREATE STATISTICS. sp_createstats non crea statistiche sulle prime colonne di indici disabilitati, a meno che tale colonna non venga usata in un altro indice abilitato. sp_createstats non crea statistiche sulle tabelle con un indice cluster disabilitato.

Quando la tabella contiene un set di colonne, sp_createstats non crea statistiche sulle colonne di tipo sparse. Per altre informazioni sui set di colonne e sulle colonne di tipo sparse, vedere Usare set di colonne e Usare colonne di tipo sparse.

Autorizzazioni

Richiede l'appartenenza al ruolo predefinito del database db_owner.

Esempi

R. Creazione di statistiche di colonna singola su tutte le colonne idonee

Nell'esempio seguente vengono create statistiche di colonna singola su tutte le colonne idonee del database corrente.

EXEC sp_createstats;  
GO  

B. Creazione di statistiche di colonna singola su tutte le colonne di indice idonee

Nell'esempio seguente vengono create statistiche di colonna singola su tutte le colonne idonee già presenti in un indice e che non sono prime colonne dell'indice.

EXEC sp_createstats 'indexonly';  
GO  

Vedi anche

Statistica
CREATE STATISTICS (Transact-SQL)
Opzioni di ALTER DATABASE SET (Transact-SQL)
DBCC SHOW_STATISTICS (Transact-SQL)
DROP STATISTICS (Transact-SQL)
UPDATE STATISTICS (Transact-SQL)
Stored procedure del motore di database (Transact-SQL)
Stored procedure di sistema (Transact-SQL)