Criar estatísticas
Aplica-se a: SQL Server 2022 (16.x)
Banco de Dados SQL do Azure
Instância Gerenciada SQL do Azure
banco de dados SQL no Microsoft Fabric
Você pode criar estatísticas de otimização de consulta em uma ou mais colunas de uma tabela ou exibição indexada no SQL Server usando o SQL Server Management Studio ou o Transact-SQL. Para a maioria das consultas, o otimizador de consulta já gera as estatísticas necessárias para um plano de consulta de alta qualidade; Em alguns casos, você precisa criar estatísticas adicionais.
Limitações e restrições
Antes de criar estatísticas com a instrução CREATE STATISTICS, verifique se a opção AUTO_CREATE_STATISTICS está definida no nível do banco de dados. Isso garantirá que o otimizador de consulta continue a criar rotineiramente estatísticas de coluna única para colunas de predicados de consulta.
Você pode listar até 32 colunas por objeto de estatística.
Não é possível descartar, renomear ou alterar a definição de uma coluna de tabela definida em um predicado estatístico filtrado.
Permissões
Requer que o usuário seja o proprietário da tabela ou do modo de exibição indexado ou um membro de uma das seguintes funções: sysadmin função de servidor fixa, db_owner função de banco de dados fixa ou a função de banco de dados fixa db_ddladmin.
Utilize o SQL Server Management Studio
No Explorador de Objetos , selecione o sinal de adição para expandir a base de dados na qual pretende criar uma nova estatística.
Selecione o sinal de mais para expandir a pasta Tabelas.
Selecione o sinal de adição para expandir a tabela na qual você deseja criar uma nova estatística.
Clique com o botão direito do rato na pasta Estatísticas e selecione Nova Estatística....
As propriedades a seguir são exibidas na página Geral na caixa de diálogo Novas Estatísticas na Tabelatable_name.
Propriedade Descrição Nome da tabela Exibe o nome da tabela descrita pelas estatísticas. Nome das Estatísticas Exibe o nome do objeto de banco de dados onde as estatísticas são armazenadas. Colunas de estatísticas Esta grelha mostra as colunas descritas por este conjunto de estatísticas. Todos os valores na grelha são somente leitura. Nome Exibe o nome da coluna descrita pelas estatísticas. Pode ser uma única coluna ou uma combinação de colunas numa única tabela. Tipo de dados Indica o tipo de dados das colunas descritas pelas estatísticas. Tamanho Exibe o tamanho do tipo de dados para cada coluna. Identidade Indica uma coluna de identidade quando ela é marcada. Permitir NULLs Indica se a coluna aceita valores NULL. Adicionar Adicione mais colunas da tabela à grade de estatísticas. Remover Remova a coluna selecionada da grade de estatísticas. Subir Mova a coluna selecionada para um local anterior na grade de estatísticas. A localização na grelha pode afetar substancialmente a utilidade das estatísticas. Mover para baixo Mova a coluna selecionada para um local posterior na grade de estatísticas. As estatísticas destas colunas foram atualizadas pela última vez Indica a idade das estatísticas. As estatísticas são mais valiosas quando são atuais. Atualize as estatísticas após grandes alterações nos dados ou depois de adicionar dados atípicos. As estatísticas de tabelas com uma distribuição consistente de dados precisam ser atualizadas com menos frequência. Atualizar estatísticas para estas colunas Verifique para atualizar as estatísticas quando a caixa de diálogo for fechada. A seguinte propriedade é exibida na página de filtro na caixa de diálogo de Novas Estatísticas sobre a Tabelatable_name.
Propriedade Descrição Expressão de Filtro Define quais linhas de dados devem ser incluídas nas estatísticas filtradas. Por exemplo, Production.ProductSubcategoryID IN ( 1, 2, 3 )
Na caixa de diálogo , Novas Estatísticas na Tabelatable_name, na página Geral, selecione Adicionar.
As propriedades a seguir são exibidas na caixa de diálogo Selecionar Colunas. Esta informação é apenas de leitura.
Propriedade Descrição Nome Exibe o nome da coluna descrita pelas estatísticas. Pode ser uma única coluna ou uma combinação de colunas numa única tabela. Tipo de dados Indica o tipo de dados das colunas descritas pelas estatísticas. Tamanho Exibe o tamanho do tipo de dados para cada coluna. Identidade Indica uma coluna de identidade quando marcada. Permitir NULLs Indica se a coluna aceita valores NULL. Na caixa de diálogo Selecionar Colunas, marque a caixa de seleção ou caixas de seleção de cada coluna para a qual deseja criar uma estatística e selecione OK.
Na caixa de diálogo Novas Estatísticas na Tabelatable_name, selecione OK.
Use Transact-SQL
No Pesquisador de Objetos , conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, selecione Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e selecione Executar.
USE AdventureWorks2022; GO -- Create new statistic object called ContactMail1 -- on the BusinessEntityID and EmailPromotion columns in the Person.Person table. CREATE STATISTICS ContactMail1 ON Person.Person (BusinessEntityID, EmailPromotion); GO
A estatística criada acima potencialmente melhora os resultados para a consulta a seguir.
USE AdventureWorks2022; GO SELECT LastName, FirstName FROM Person.Person WHERE EmailPromotion = 2 ORDER BY LastName, FirstName; GO