Informazioni
La mia domanda si riferisce a una tabella moderatamente grande (~ 40 GB di spazio dati) che è un heap
(sfortunatamente, non sono autorizzato ad aggiungere un indice cluster alla tabella dai proprietari dell'applicazione)
È stata creata una statistica creata automaticamente su una colonna Identity ( ID
), ma è vuota.
- Le statistiche di creazione automatica e di aggiornamento automatico sono attive
- Sono state apportate modifiche nella tabella
- Esistono altre statistiche (create automaticamente) che vengono aggiornate
- C'è un'altra statistica sulla stessa colonna creata da un indice (duplicato)
- Costruzione: 12.0.5546
La statistica duplicata viene aggiornata:
La vera domanda
A mio avviso, è possibile utilizzare tutte le statistiche e tenere traccia delle modifiche, anche se ci sono due statistiche esattamente sulle stesse colonne (duplicati), quindi perché questa statistica rimane vuota?
Informazioni statistiche
Informazioni statistiche DB
Dimensioni della tavola
Colonna Informazioni su cui viene creata la statistica
[ID] [int] IDENTITY(1,1) NOT NULL
Colonna identità
select * from sys.stats
where name like '%_WA_Sys_0000000A_6B7099F3%';
Ottenere alcune informazioni su un'altra statistica
select * From sys.dm_db_stats_properties (1802541555, 3)
In confronto al mio stat vuoto:
Statistiche + istogramma da "genera script":
/****** Object: Statistic [_WA_Sys_0000000A_6B7099F3] Script Date: 2/1/2019 10:18:19 AM ******/
CREATE STATISTICS [_WA_Sys_0000000A_6B7099F3] ON [dbo].[table]([ID]) WITH STATS_STREAM = 0x01000000010000000000000000000000EC03686B0000000040000000000000000000000000000000380348063800000004000A00000000000000000000000000
Quando si crea una copia delle statistiche, non sono presenti dati
CREATE STATISTICS [_WA_Sys_0000000A_6B7099F3_TEST] ON [dbo].[table]([ID]) WITH STATS_STREAM = 0x01000000010000000000000000000000EC03686B0000000040000000000000000000000000000000380348063800000004000A00000000000000000000000000
Quando aggiornano manualmente le statistiche, vengono aggiornate.
UPDATE STATISTICS [dbo].[Table]([_WA_Sys_0000000A_6B7099F3_TEST])