Pytania otagowane jako execution-plan

Strategia wybrana przez optymalizator zapytania do przetworzenia zapytania.


1
Jakie są konsekwencje ustawienia ARITHABORT na wszystkie połączenia w SQL Server?
Stwierdziłem więc, że nieprawidłowe działanie mojego SQL Server wynika z domyślnego ustawienia .Net SqlClient Data Provider na SET ARITHABORT OFF. Powiedziawszy to, czytałem różne artykuły, które debatują o najlepszym sposobie realizacji tego. Dla mnie chcę po prostu łatwego sposobu, ponieważ cierpi SQL Server, a moje dostrajanie zapytań nie zostało w …

1
Dlaczego dołączenie do eliminacji nie działa z sys.query_store_plan?
Poniżej przedstawiono uproszczenie problemu z wydajnością występującego w magazynie zapytań: CREATE TABLE #tears ( plan_id bigint NOT NULL ); INSERT #tears (plan_id) VALUES (1); SELECT T.plan_id FROM #tears AS T LEFT JOIN sys.query_store_plan AS QSP ON QSP.plan_id = T.plan_id; plan_idKolumna jest udokumentowana jako klucz podstawowy sys.query_store_plan, ale plan wykonania nie …


1
Ogromne niedopasowanie między zgłoszoną wielkością indeksu a liczbą buforów w planie wykonania
Problem Mamy zapytanie jak SELECT COUNT(1) FROM article JOIN reservation ON a_id = r_article_id WHERE r_last_modified < now() - '8 weeks'::interval AND r_group_id = 1 AND r_status = 'OPEN'; Ponieważ często dochodzi do przekroczenia limitu czasu (po 10 minutach), postanowiłem zbadać problem. Dane EXPLAIN (ANALYZE, BUFFERS)wyjściowe wyglądają następująco: Aggregate (cost=264775.48..264775.49 …


1
Dlaczego klucz podstawowy (klastrowany) nie jest używany w tym zapytaniu?
Mam tabelę SQL Server 2008 R2, której struktura schematu wygląda następująco: CREATE TABLE [dbo].[CDSIM_BE] ( [ID] [bigint] NOT NULL, [EquipmentID] [varchar](50) NOT NULL, [SerialNumber] [varchar](50) NULL, [PyrID] [varchar](50) NULL, [MeasMode] [varchar](50) NULL, [ReadTime] [datetime] NOT NULL, [SubID] [varchar](15) NULL, [ProbePosition] [float] NULL, [DataPoint] [int] NULL, CONSTRAINT [PK_CDSIM_BE] PRIMARY KEY CLUSTERED …

2
Wolne wyszukiwanie pełnotekstowe z powodu bardzo niedokładnych oszacowań wierszy
Wydaje się, że wykonywanie pełnotekstowych zapytań w tej bazie danych (przechowywanie biletów RT ( Request Tracker )) trwa bardzo długo. Tabela załączników (zawierająca dane pełnotekstowe) ma około 15 GB. Schemat bazy danych jest następujący, ma około 2 milionów wierszy: rt4 = # \ d + załączniki Tabela „public.attachments” Kolumna | …




1
Brak indeksu klastrowego jest już częścią indeksu klastrowanego
Debuguję wolno działające zapytanie, aw planie wykonania sugerowany jest indeks nieklastrowany o wpływie 51,6648. Jednak indeks nieklastrowany obejmuje tylko kolumny, które są już w indeksie klastrowym złożonego klucza podstawowego (PK). Czy może tak być z powodu kolejności kolumn w indeksie? tzn. jeśli kolumny w indeksie klastrowym nie są uporządkowane od …

1
Indeks Szukaj kosztów operatora
Dla przykładowej bazy danych AdventureWorks zapytanie poniżej: SELECT P.ProductID, CA.TransactionID FROM Production.Product AS P CROSS APPLY ( SELECT TOP (1) TH.TransactionID FROM Production.TransactionHistory AS TH WHERE TH.ProductID = P.ProductID ORDER BY TH.TransactionID DESC ) AS CA; Planu pokazuje wykonanie Szacowany koszt operatora od 0.0850383 (93%) dla indeksu Szukajcie : Koszt …

1
Łączenie skrótem między tabelami wzorcowymi / szczegółowymi daje zbyt niskie oszacowanie liczności
W jaki sposób zachęcić SQL Server 2014 do łączenia szacunkowej wielkości większej (szczegółowej) tabeli przy dołączaniu głównej tabeli do szczegółowej tabeli jako oszacowania liczności wyników łączenia? Na przykład, łącząc 10 000 wierszy wzorcowych z 100 tys. Wierszy szczegółowych, chcę, aby SQL Server oszacował łączenie przy 100 tys. Wierszy - tyle …

1
Dlaczego usunięcie w widoku podzielonym na partycje powoduje wstawienie indeksu klastrowanego?
Mam widok podzielony na partycje, który ma poniżej wyzwalacza wstawiania (słaba partycja mans). Kiedy wykonuję DELETE, otrzymuję poniższy plan zapytań: delete from factproductprice where pricedate = '20170725' Uruchom na widoku: ALTER TRIGGER [dbo].[factProductPriceDelete] ON [dbo].[FactProductPrice] INSTEAD OF DELETE AS BEGIN IF @@ROWCOUNT = 0 RETURN; DECLARE @PriceDate DATE SELECT @PriceDate …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.