Table des matières
前言:
准备工作:
步骤:
分析:
Maison base de données tutoriel mysql 第十二章SQLServer统计信息(4)在过滤索引上的统计信息

第十二章SQLServer统计信息(4)在过滤索引上的统计信息

Jun 07, 2016 pm 03:19 PM
2 sqlserver 信息 Préface 索引 统计 过滤

前言: 从 2008 开始,引入了一个增强非聚集 索引 的新功能—— 过滤 索引 ( filter index ),可以使用带有 where 条件的语句来创建非聚集 索引 , 过滤 掉不需要的数据,降低 索引 的维护开销和存储空间,提高查询性能。 准备工作: 在 AdventureWorks201

前言:

        从2008开始,引入了一个增强非聚集索引的新功能——过滤索引filter index),可以使用带有where条件的语句来创建非聚集索引过滤掉不需要的数据,降低索引的维护开销和存储空间,提高查询性能。

 

准备工作:

AdventureWorks2012上,有一个Production.WorkOrder表,将使用这个表来做演示。

 

步骤:

1、  创建一个非聚集索引Production.WorkOrder列:

CREATE INDEX idx_WorkOrder_ScrapReasonID ON Production.WorkOrder(ScrapReasonID)

GO
Copier après la connexion


 

2、  创建一个非聚集索引会自动更新对应的统计对象:

DBCC SHOW_STATISTICS('Production.WorkOrder',IX_WorkOrder_ScrapReasonID)

GO
Copier après la connexion


 

 

3、  结果如下:

 

第十二章SQLServer统计信息(4)在过滤索引上的统计信息

4、  查看All denisty列,现在删掉之前的索引,并创建一个过滤索引

DROP INDEX IX_WorkOrder_ScrapReasonID ON Production.WorkOrderGO CREATE INDEX IX_WorkOrder_ScrapReasonID ON Production.WorkOrder(ScrapReasonID)WHERE ScrapReasonID IS NOT NULL GO
Copier après la connexion


 

 

5、  再次执行并查看All density列,最后删除这个索引

 

 DBCC SHOW_STATISTICS('Production.WorkOrder',IX_WorkOrder_ScrapReasonID)

GO

 

DROP INDEX IX_WorkOrder_ScrapReasonID ON Production.WorkOrder

GO
 
Copier après la connexion


 

 

6、  结果如下:

 第十二章SQLServer统计信息(4)在过滤索引上的统计信息

分析:

        从上面的两个图中对比结果可以知道,第一个结果集,在row sampled列是不同的,第一个是72591,第二个是729,相差了接近100倍,在Filter Expression列,一个是null一个是有值。

        在All density列,第一个显示的是ScriptReasonID列,这个没有什么明显的差别。但是第二个就有比较大的差异。因为ScriptReasonID是指向聚集索引的非聚集索引列。

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment importer un fichier mdf dans sqlserver Comment importer un fichier mdf dans sqlserver Apr 08, 2024 am 11:41 AM

Les étapes d'importation sont les suivantes : Copiez le fichier MDF dans le répertoire de données de SQL Server (généralement C:\Program Files\Microsoft SQL Server\MSSQL\DATA). Dans SQL Server Management Studio (SSMS), ouvrez la base de données et sélectionnez Attacher. Cliquez sur le bouton Ajouter et sélectionnez le fichier MDF. Confirmez le nom de la base de données et cliquez sur le bouton OK.

Comment résoudre le problème selon lequel l'objet nommé existe déjà dans la base de données sqlserver Comment résoudre le problème selon lequel l'objet nommé existe déjà dans la base de données sqlserver Apr 05, 2024 pm 09:42 PM

Pour les objets du même nom qui existent déjà dans la base de données SQL Server, les étapes suivantes doivent être suivies : Confirmez le type d'objet (table, vue, procédure stockée). IF NOT EXISTS peut être utilisé pour ignorer la création si l'objet est vide. Si l'objet contient des données, utilisez un nom différent ou modifiez la structure. Utilisez DROP pour supprimer des objets existants (soyez prudent, sauvegarde recommandée). Vérifiez les modifications de schéma pour vous assurer qu'il n'y a aucune référence à des objets supprimés ou renommés.

Que faire si le service sqlserver ne peut pas être démarré Que faire si le service sqlserver ne peut pas être démarré Apr 05, 2024 pm 10:00 PM

Lorsque le service SQL Server ne parvient pas à démarrer, voici quelques étapes à résoudre : Consultez le journal des erreurs pour déterminer la cause première. Assurez-vous que le compte de service est autorisé à démarrer le service. Vérifiez si les services de dépendance sont en cours d'exécution. Désactivez le logiciel antivirus. Réparez l'installation de SQL Server. Si la réparation ne fonctionne pas, réinstallez SQL Server.

Comment vérifier le numéro de port sqlserver Comment vérifier le numéro de port sqlserver Apr 05, 2024 pm 09:57 PM

Pour afficher le numéro de port SQL Server : Ouvrez SSMS et connectez-vous au serveur. Recherchez le nom du serveur dans l'Explorateur d'objets, cliquez dessus avec le bouton droit et sélectionnez Propriétés. Dans l'onglet Connexion, affichez le champ Port TCP.

Comment récupérer une base de données supprimée accidentellement dans SQLserver Comment récupérer une base de données supprimée accidentellement dans SQLserver Apr 05, 2024 pm 10:39 PM

Si vous supprimez accidentellement une base de données SQL Server, vous pouvez suivre les étapes suivantes pour la récupérer : arrêter l'activité de la base de données ; sauvegarder les fichiers journaux ; vérifier les options de récupération : restaurer à partir d'une sauvegarde ; utiliser DBCC CHECKDB ; outils de fête. Veuillez sauvegarder régulièrement votre base de données et activer la journalisation des transactions pour éviter toute perte de données.

Comment supprimer sqlserver si l'installation échoue ? Comment supprimer sqlserver si l'installation échoue ? Apr 05, 2024 pm 11:27 PM

Si l'installation de SQL Server échoue, vous pouvez la nettoyer en suivant ces étapes : Désinstaller SQL Server Supprimer les clés de registre Supprimer les fichiers et dossiers Redémarrer l'ordinateur

Comment changer l'installation anglaise de sqlserver en chinois Comment changer l'installation anglaise de sqlserver en chinois Apr 05, 2024 pm 10:21 PM

L'installation de SQL Server en anglais peut être modifiée en chinois en suivant les étapes suivantes : téléchargez le module linguistique correspondant ; arrêtez le service SQL Server ; modifiez la langue de l'instance ; modifiez la langue de l'interface utilisateur ;

Que dois-je faire si sqlserver ne peut pas être supprimé ni réinstallé ? Que dois-je faire si sqlserver ne peut pas être supprimé ni réinstallé ? Apr 05, 2024 pm 11:30 PM

Le problème selon lequel SQL Server ne peut pas être réinstallé en raison d'une suppression incomplète peut être résolu en suivant les étapes suivantes : supprimez manuellement les fichiers et les entrées de registre ; utilisez l'outil de désinstallation de l'installation de SQL Server ; utilisez un outil de désinstallation tiers ; vérifiez le redémarrage de l'Observateur d'événements Windows ; l'ordinateur ; réinstallez SQL Server.

See all articles