«execution-plan» etiketlenmiş sorular

Bir sorguyu işlemek için sorgu optimize edici tarafından seçilen strateji.

1
Sorgu Deposu Kuvvet Planı özelliği çalışmıyor
Sorgu Deposu Gücü planı özelliği planı zorunlu kılıyor gibi görünmüyor. Sorgu Deposunun farkındayım - Zorlanmış Her Zaman Zorunlu Değildir ; ancak, planım önemsiz bir şekilde değişmeyebilir, ancak sorgu iyileştirici yanlış dizinler, döngü seçenekleri vb. seçmeye devam edebilir. Temel olarak: zorla plan seçimime uymuyor. Ben birçok plan zorladım ve Sadece Çalışmıyor …


1
Predicate Ara ve Predicate Arasındaki Fark
Performans biz SQL Server 2014 Enterprise bir sorgu ayarlamaya çalışıyorum. SQL Sentry Plan Explorer'da gerçek sorgu planını açtım ve bir düğümde bir Arama Predicate ve ayrıca bir Predicate olduğunu görebilirsiniz Arasındaki fark nedir Seek Predicate ve Predicate ? Not: Bu düğümde (ör. Tahmini ve Gerçek satırlar, kalan GÇ) birçok sorun …

2
Neden bir DELETE sorgusu bir biçimde diğerinden daha uzun bir biçimde çalışıyor?
Bazı kopyaları kaldırmaya çalışan belirli bir temizleme kodu var. Bu, birçok müşteri sitesinde mükemmel şekilde çalışır. Günlükler bana bu sorgu tarafından en az 1 sn 45 sn tüketildiğini söylüyor: DELETE FROM [tbl] WHERE [Id] NOT IN ( SELECT MIN([Id]) FROM [tbl] GROUP BY [IdProject], [IdRepresentative], [TimeStart] ) Ama bu sorgunun …

2
Neden Int / Smallint'in Varchar'a örtük bir dönüşümü alıyorum ve Kardinalite Tahminlerini gerçekten etkiliyor mu?
Ben gerçek yürütme planı Show Plan Analysis (SSMS) kullanarak yavaş performans gösteren bir sorgu ateş sorun çalışıyorum. Analiz aracı, satır sayısı tahminlerinin plandaki birkaç yerde döndürülen sonuçlardan alınmadığını ve ayrıca bana bazı örtük dönüşüm uyarıları verdiğini belirtir. Bu örtük dönüşümleri int üzerinden Varchar anlamıyorum- Başvurulan alanlar sorguda herhangi bir parametre …

1
SQL Server Sorgu Planı XML: QueryPlanHash Uzunluğu
GÜNCELLEME: Bu kesinlikle bir hata. Tüm ayrıntılar için bu Bağlantı Öğesine bakın . Sp_BlitzCache (tam açıklama, yazarlardan biriyim) bazı değişiklikleri test ederken, kodumuzda bir hata olduğunu düşündüm ne rastladı. Bir noktada, sorgu maliyeti elde etmek için Sorgu Planı Karması ile eşleşiyoruz. Bunu şu şekilde yapıyoruz: statement.value('sum(/p:StmtSimple[xs:hexBinary(substring(@QueryHash, 3)) = xs:hexBinary(sql:column("b.QueryHash"))]/@StatementSubTreeCost)', 'float') …

4
SQL Server basit bijection üzerinde dizin kullanamıyor
Bu başka bir sorgu optimizer bilmecesidir. Belki sadece sorgu optimize edicileri aşırı tahmin ediyorum, ya da belki bir şey eksik - bu yüzden orada koyuyorum. Basit bir masam var CREATE TABLE [dbo].[MyEntities]( [Id] [uniqueidentifier] NOT NULL, [Number] [int] NOT NULL, CONSTRAINT [PK_dbo.MyEntities] PRIMARY KEY CLUSTERED ([Id]) ) CREATE NONCLUSTERED INDEX …

2
Tek Akış Toplam davranış
Sorgu: declare @X xml = ' <item ID = "0"/> <item ID = "1"/> <item/> <item/>'; select I.X.value('@ID', 'int') from @X.nodes('/item') as I(X); Sonuç: ----------- 0 1 NULL NULL Yürütme planı: Üst dal XML'i dört satıra parçalar ve alt dal öznitelik değerini alır ID. Bana garip gelen şey, Akış Toplama …

3
Neden birdenbire dizinlere veya sorgunun değiştirilmesi gerektiğine nasıl cevap verilir
3 yıllık deneyime sahip genç DBA'yım. Bizim işimiz, sorgularda ince ayar yapmak veya geliştiricilere belirli kodların yeniden yazılması veya dizinlere ihtiyaç duyulması konusunda tavsiyelerde bulunmaktır. Geliştirici ekibinin sıkça sorduğu basit bir soru: "Dün iyi geçti, aniden ne değişti?" ve altyapı tarafını kontrol etmemiz istenecek. Herhangi bir soruna ilk tepki her …

1
Sorgu planlarının yeniden kullanılabilirlik ifadesine bölünmesi daha iyi olur mu?
Sorgu planları tarafından nasıl derlendiğini, depolandığı ve alındığı hakkında sınırlı bilgimden, bir çoklu ifade sorgusunun veya saklı yordamın, gelecekteki yürütmelerde sorgu tarafından kullanılacak sorgu planı önbelleğinde depolanacak olan sorgu planını üreteceğini anlıyorum. Bu plan sorgu karma ile sorgu planı önbellekten alınır, yani sorgu düzenlenmiş ve yürütme karma farklı ve hiçbir …

2
İstatistikleri, yürütme planlarını ve 'artan temel sorunu' anlama
İstatistikler, yürütme planları, saklı yordam yürütme arasındaki ilişkiyi (kavramsal olarak) daha iyi anlamaya çalışıyorum. İstatistiklerin yalnızca saklı yordam için yürütme planı oluştururken kullanıldığını ve gerçek yürütme bağlamında kullanılmadığını söyleyerek doğru muyum? Diğer bir deyişle, bu doğruysa, plan oluşturulduktan sonra (ve düzgün bir şekilde yeniden kullanıldığını varsayarak), "güncel" istatistikler ne kadar …

2
PARTITION BY içermeyen ROW_NUMBER () hala Segment yineleyici oluşturuyor
Sıralaması ve toplu pencere işlevleri, özellikle Segment ve Dizi Projesi yineleyicileri hakkında benim yaklaşan bir blog yazı üzerine yazıyorum. Bunu anlamanın yolu, Segmentin bir grubun sonunu / başlangıcını oluşturan bir akıştaki satırları tanımlamasıdır, bu nedenle aşağıdaki sorgu: SELECT ROW_NUMBER() OVER (PARTITION BY someGroup ORDER BY someOrder) Bir satırın ne zaman …

1
İşlev çağrılarıyla tahmini ve gerçek sorgu planı
SQL Server, bir birleştirme çoğaltma sorgusu bu sorguyu var: SELECT DISTINCT b.tablenick, b.rowguid, c.generation, sys.fn_MSgeneration_downloadonly ( c.generation, c.tablenick ) FROM #belong b LEFT OUTER JOIN dbo.MSmerge_contents c ON c.tablenick = b.tablenick AND c.rowguid = b.rowguid; Tahmini sorgu planı 3 sorgu hakkında bilgi içerir: Yukarıdaki sorgu Fn_MSgeneration_downloadonly işlev çağrısı Fn_MSArticle_has_downloadonly_property işlev …

1
JOIN deyiminde OR kullanılırken garip sorgu planı - Tablodaki her satır için sürekli tarama
UNIONing iki sonuç kümesi neden ORIN yan tümcesinde OR kullanarak daha iyi olabilir göstermek için bir örnek sorgu planı üretmeye çalışıyorum. Yazdığım bir sorgu planı beni çok üzdü. Users.Reputation üzerinde kümelenmemiş bir dizin ile StackOverflow veritabanı kullanıyorum. Sorgu CREATE NONCLUSTERED INDEX IX_NC_REPUTATION ON dbo.USERS(Reputation) SELECT DISTINCT Users.Id FROM dbo.Users INNER …


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.