Questions marquées «query-performance»

Pour toute question sur l'amélioration des performances et / ou de l'efficacité des requêtes de base de données.



2
Comment gérer un mauvais plan de requête causé par une égalité exacte sur le type de plage?
J'effectue une mise à jour où j'ai besoin d'une égalité exacte sur une tstzrangevariable. ~ 1 M de lignes sont modifiées et la requête prend environ 13 minutes. Le résultat de EXPLAIN ANALYZEpeut être vu ici , et les résultats réels sont extrêmement différents de ceux estimés par le planificateur …


1
SQL Server 2014: une explication pour une estimation de cardinalité auto-jointe incohérente?
Considérez le plan de requête suivant dans SQL Server 2014: Dans le plan de requête, une auto-jointure ar.fId = ar.fIddonne une estimation de 1 ligne. Cependant, il s'agit d'une estimation logiquement incohérente: ara des 20,608lignes et une seule valeur distincte de fId(reflétée avec précision dans les statistiques). Par conséquent, cette …


3
Procédures stockées et SQL en ligne
Je sais que les procédures stockées sont plus efficaces via le chemin d'exécution (que le sql en ligne dans les applications). Cependant, une fois pressé, je ne sais pas trop pourquoi. Je voudrais connaître le raisonnement technique pour cela (d'une manière que je puisse expliquer à quelqu'un plus tard). Quelqu'un …

1
Index: performances entières vs chaînes si le nombre de nœuds est le même
Je développe une application en Ruby on Rails avec la base de données PostgreSQL (9.4). Pour mon cas d'utilisation, les colonnes dans les tableaux seront recherchées très fréquemment, car tout le point de l'application recherche des attributs très spécifiques sur un modèle. Je décide actuellement d'utiliser un integertype ou simplement …

5
Clause WHERE SARGable pour deux colonnes de date
J'ai une question intéressante pour moi sur la SARGabilité. Dans ce cas, il s'agit d'utiliser un prédicat sur la différence entre deux colonnes de date. Voici la configuration: USE [tempdb] SET NOCOUNT ON IF OBJECT_ID('tempdb..#sargme') IS NOT NULL BEGIN DROP TABLE #sargme END SELECT TOP 1000 IDENTITY (BIGINT, 1,1) AS …


2
COMME utilise l'index, CHARINDEX non?
Cette question est liée à ma vieille question . L'exécution de la requête ci-dessous prenait 10 à 15 secondes: SELECT [customer].[Customer name],[customer].[Sl_No],[customer].[Id] FROM [company].dbo.[customer] WHERE (Charindex('123456789',CAST([company].dbo.[customer].[Phone no] AS VARCHAR(MAX)))>0) Dans certains articles, j'ai vu que l'utilisation CASTet CHARINDEXne bénéficiera pas de l'indexation. Certains articles indiquent également que l'utilisation LIKE '%abc%'ne …




2
Pourquoi l'opérateur de concaténation estime-t-il moins de lignes que ses entrées?
Dans l'extrait de plan de requête suivant, il semble évident que l'estimation de ligne pour l' Concatenationopérateur doit être ~4.3 billion rows, ou la somme des estimations de ligne pour ses deux entrées. Cependant, une estimation de ~238 million rowsest produite, conduisant à une stratégie Sort/ sous-optimale Stream Aggregatequi répand …

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.