Skip to content

Селективность предиката и структура индекса

Пересказ статьи Erik Darling. Predicate Selectivity and Index Design



Незаконченные дела


Какое-то время назад я обещал написать о том, что заставляет SQL Server выполнять два поиска вместо поиска с остаточным предикатом.
В недавнем посте я немного затронул вопрос селективности предиката в структуре индекса.
Сейчас я собираюсь связать эти две темы вместе. Возможно. Надеюсь. Посмотрим, что из этого выйдет.
Если вкратце, то соседние ключевые столбцы в индексе довольно просто поддерживают поиск, и что выбор первого столбца должен, вероятно, опираться на то, что фильтруется наиболее часто.
Продолжить чтение "Селективность предиката и структура индекса"

Оптимизация передаваемых непосредственно запросов

Пересказ статьи Bert Wagner. Optimizing for Ad Hoc Workloads


Кэш планов выполнения - отличная вещь: после затраченных усилий на построение плана запроса SQL Server сохраняет этот план в кэше планов для повторного использования в дальнейшем.
Продолжить чтение "Оптимизация передаваемых непосредственно запросов"

Как перевести первую букву каждого слова предложения в верхний регистр?

Эта задача возникла как осмысленный пример для демонстрации использования скалярных функций, табличных переменных и новых возможностей языка T-SQL. Итак, требуется создать функцию, которая будет делать первую букву каждого слова заглавной, а остальные - строчными.

Условия:

  • Слова разделяются единичными пробелами.

  • Количество слов произвольно.


Продолжить чтение "Как перевести первую букву каждого слова предложения в верхний регистр?"
Категории: T-SQL

Новости за неделю 2019-04-06 - 2019-04-12

§ Под номером 306 выставлен очередной кандидат на обучающий этап (сложность 1 балл). Прежняя задача под номером 306 перенесена на обучающий этап под номером 145.

Продолжить чтение "Новости за неделю 2019-04-06 - 2019-04-12"

Кардинальное число (мощность множества)

Пересказ статьи Bert Wagner. Cardinality: Not Just For The Birds


При построении индексов для ваших запросов порядок столбцов в ключе индекса имеет значение. SQL Server наиболее эффективно использует индекс, если данные в этом индексе сохраняются в том же порядке, какой требуется для вашего запроса при выполнении соединения (join), фильтрации (where), группировки (group by) или сортировки (order by).
Продолжить чтение "Кардинальное число (мощность множества)"