Запитання з тегом «execution-plan»

Вибрана оптимізатором запиту стратегія для обробки запиту.

2
CROSS APPLY виробляє зовнішнє з'єднання
У відповідь на підрахунок SQL, що відрізняється від розділу, Ерік Дарлінг опублікував цей код, щоб вирішити проблеми через відсутність COUNT(DISTINCT) OVER (): SELECT * FROM #MyTable AS mt CROSS APPLY ( SELECT COUNT(DISTINCT mt2.Col_B) AS dc FROM #MyTable AS mt2 WHERE mt2.Col_A = mt.Col_A -- GROUP BY mt2.Col_A ) AS …

1
План поганих запитів SQL Server 2016 блокує БД раз на тиждень
Раз на тиждень, протягом останніх 5 тижнів, приблизно в один і той же час доби (рано вранці, можливо, грунтується на активності користувачів, коли люди починають його використовувати), SQL Server 2016 (AWS RDS, дзеркальне відображення) починає відмічати багато часу запити. ОНОВЛЕННЯ СТАТИСТИКА на всіх таблицях завжди виправляє її негайно. Після першого …

3
Усуньте оператор пошуку ключів (кластер), який уповільнює продуктивність
Як я можу усунути оператор пошуку ключів (кластерних) у своєму плані виконання? У таблиці tblQuotesвже є кластерний індекс (on QuoteID) і 27 некластеризованих індексів, тому я намагаюся більше не створювати. Я помістив кластерний стовпчик індексу QuoteIDу свій запит, сподіваючись, що це допоможе - але, на жаль, все одно. План виконання …

1
Які фактори затрат входять в оптимізатор, вибираючи різні типи котушок?
Мошонка У SQL Server є кілька видів котушок. Ці два мене цікавлять - це котушки таблиці та індекси , поза запитами на модифікацію . Читати лише запити, особливо на внутрішній стороні об'єднання вкладених циклів, можна використовувати або котушку таблиці або індексу, щоб потенційно зменшити введення-виведення та покращити продуктивність запитів. Ці …

1
План виконання з декількома відсутніми індексами
Якщо ви запустите запит із "Включити фактичний план виконання", план також запропонує індекси, яких немає. Деталі індексу знаходяться всередині MissingIndexesтегу в XML. Чи існує ситуація, коли план включає кілька пропозицій щодо індексів? Я пробував різні запити sql, але не міг придумати жоден запит, який генерує два чи більше відсутніх індексів.

2
Як оптимізувати T-SQL-запит за допомогою плану виконання
У мене є SQL-запит, який я витратив останні два дні, намагаючись оптимізувати, використовуючи пробну помилку та план виконання, але безрезультатно. Вибачте, будь ласка, за це, але я опублікую весь план виконання тут. Я доклав зусиль, щоб назви таблиць і стовпців у плані запитів та виконання були загальними як для стислості, …

3
Чому існують відмінності в плані виконання між OFFSET… FETCH та старою схемою ROW_NUMBER?
Нова OFFSET ... FETCHмодель, представлена ​​разом із SQL Server 2012, пропонує просте та швидше підключення сторінки. Чому взагалі є якісь відмінності, враховуючи, що дві форми є семантично однаковими і дуже поширеними? Можна припустити, що оптимізатор розпізнає обидва і оптимізує їх (тривіально) в повній мірі. Ось дуже простий випадок, коли OFFSET …

1
Індекс не використовується з `= any ()`, але використовується з `in`
Таблиця tмає два індекси: create table t (a int, b int); create type int_pair as (a int, b int); create index t_row_idx on t (((a,b)::int_pair)); create index t_a_b_idx on t (a,b); insert into t (a,b) select i, i from generate_series(1, 100000) g(i) ; Індекс не використовується з anyоператором: explain analyze …

1
Інтерпретація Showplan XML SQL Server
Щойно я розгорнув функцію на своєму веб-сайті http://sqlfiddle.com, яка дозволяє користувачам переглядати непрофільні плани виконання своїх запитів. У випадку з PostgreSQL, MySQL та (певною мірою) Oracle, дивлячись на вихідний план виконання, видається зрозумілим. Однак, якщо ви подивитеся на висновок плану виконання для SQL Server (згенерований за допомогою SET SHOWPLAN_XML ON), …

2
Постійне спулінг сканування
У мене є таблиця з кількома десятками рядів. Спрощена установка наступна CREATE TABLE #data ([Id] int, [Status] int); INSERT INTO #data VALUES (100, 1), (101, 2), (102, 3), (103, 2); І у мене є запит, який приєднує цю таблицю до набору побудованих рядків зі значенням таблиці (з змінних та констант), …

1
Унікальні лічильники оновлень індексів та статистичних рядків
З огляду на наступну таблицю, унікальний кластерний індекс та статистику: CREATE TABLE dbo.Banana ( pk integer NOT NULL, c1 char(1) NOT NULL, c2 char(1) NOT NULL ); CREATE UNIQUE CLUSTERED INDEX pk ON dbo.Banana (pk); CREATE STATISTICS c1 ON dbo.Banana (c1); CREATE STATISTICS c2 ON dbo.Banana (c2); INSERT dbo.Banana (pk, …

2
Який сенс і користь від використання SqlCommand.Prepare ()?
Я натрапив на код розробника, де SqlCommand.Prepare () (див. MSDN) метод широко використовується перед виконанням SQL запитів. І мені цікаво, в чому користь цього? Зразок: command.Prepare(); command.ExecuteNonQuery(); //... command.Parameters[0].Value = 20; command.ExecuteNonQuery(); Я трохи пограв і простежив. Виконання команди після виклику Prepare()методу змушує Sql Server виконати наступне твердження: declare @p1 …

1
Плани відтворення SQL Server щодня
У нас є ця проблема у виробничому середовищі. Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (X64) - Enterprise Edition (64-розрядна) для Windows NT 6.1 (Build 7601: Service Pack 1). SQL Server скидає всі (майже на 100%) старі плани виконання та відтворює їх щодня протягом ночі (з 23:00 до 8:00 …

1
Примусовий показник котушки
Я знаю його щось, чого слід уникати з міркувань продуктивності, але я намагаюся показати умову, де це виглядає як демонстрація того, як переконатися, що воно не з’являється. Однак я закінчую відсутнім попередженням про індекс, але оптимізатор вирішує не створювати тимчасовий індекс. Я використовую запит SELECT z.a FROM dbo.t5 AS z …

1
Примусові плани на читаються вторинники
Якщо план вимушений для основного в групі доступності, чи застосовується він до запитів, запущених на вторинній? Я шукаю відповіді, які охоплюють обидві можливості примусового плану: Посібники з плану Примусовий план магазину запитів Я прочитав наступне, що дозволяє припустити, що примусові плани щодо управління якістю не переносяться, але не можу знайти …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.