Вопросы с тегом «cardinality-estimates»

3
Зачем оператору параллелизма (потоки перераспределения) уменьшать оценки строк до 1?
Я использую SQL Server 2012 Enterprise. Я столкнулся с планом SQL, демонстрирующим некоторое поведение, которое я не нахожу полностью интуитивным. После тяжелой операции параллельного сканирования индекса происходит операция параллелизма (потоки перераспределения), но она убивает оценки строк, возвращаемые сканированием индекса (Object10.Index2), уменьшая оценку до 1. Я провел некоторый поиск, но не …

2
Почему запрос DELETE выполняется в одном формате намного дольше, чем в другом?
У меня есть определенный код очистки, который пытается удалить некоторые дубликаты. Это отлично работает на многих сайтах клиентов. Журналы говорят мне, что этот запрос потребляет от 1 до 45 секунд: DELETE FROM [tbl] WHERE [Id] NOT IN ( SELECT MIN([Id]) FROM [tbl] GROUP BY [IdProject], [IdRepresentative], [TimeStart] ) Но у …

2
Почему я получаю неявное преобразование Int / Smallint в Varchar, и это действительно влияет на оценки кардинальности?
Я пытаюсь решить проблему с медленным выполнением запроса, используя Show Plan Analysis (SSMS) для фактического плана выполнения. Инструмент «Анализ» указывает, что оценки количества строк не совпадают с возвращенными результатами в нескольких местах плана, а также дает некоторые неявные предупреждения о преобразовании. Я не понимаю этих неявных преобразований типа int в …

3
Сортировка разливов в tempdb из-за varchar (max)
На сервере с 32 ГБ мы используем SQL Server 2014 SP2 с максимальной памятью 25 ГБ, у нас есть две таблицы, здесь вы найдете упрощенную структуру обеих таблиц: CREATE TABLE [dbo].[Settings]( [id] [int] IDENTITY(1,1) NOT NULL, [resourceId] [int] NULL, [typeID] [int] NULL, [remark] [varchar](max) NULL, CONSTRAINT [PK_Settings] PRIMARY KEY CLUSTERED …

1
Преобразование типов в выражении может повлиять на «CardinalityEstimate» при выборе плана запроса?
Я поддерживаю архивную базу данных, которая хранит исторические данные в секционированных представлениях. Столбец разделения - это дата и время. Каждая таблица в представлении хранит данные за один месяц. Мы ограничиваем события в каждой таблице проверочным ограничением в столбце datetime. Это позволяет оптимизатору ограничивать таблицы, в которых ищутся запросы, которые фильтруются …

1
Хеш-соединение между таблицами master / detail дает слишком низкую оценку количества элементов
При объединении основной таблицы с подробной таблицей, как я могу побудить SQL Server 2014 использовать оценку мощности таблицы большего размера (подробная) в качестве оценки мощности вывода соединения? Например, при объединении 10К мастер-строк в 100КБ подробных строк я хочу, чтобы SQL Server оценивал объединение в 100К строк - так же, как …

3
Как намекнуть присоединение «многие ко многим» в SQL Server?
У меня есть 3 "большие" таблицы, которые объединяются в пару столбцов (обе int). Таблица1 имеет ~ 200 миллионов строк Таблица2 имеет ~ 1,5 миллиона строк Таблица3 имеет ~ 6 миллионов строк Каждая таблица имеет кластерный индекс Key1, Key2и затем еще один столбец. Key1имеет низкую мощность и очень искажен. На него …

2
Оценка кардинальности для> = и> для значения внутришаговой статистики
Я пытаюсь понять, как SQL Server пытается оценить предложения «больше чем» и «больше, чем равно» в SQL Server 2014. Я думаю, что я понимаю оценку мощности, когда она достигает шага, например, если я делаю select * from charge where charge_dt >= '1999-10-13 10:47:38.550' Оценка количества элементов равна 6672, которую можно …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.