Skip to content

Коррелирующие подзапросы против производных таблиц

Пересказ статьи Bert Wagner. Correlated Subqueries vs Derived Tables


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

Разница между Cube и Rollup

Пересказ статьи Ben Richardson. The Difference Between Rollup and Cube




Предложение GROUP BY используется для группировки результатов агрегатных функций по заданному столбцу. Однако предложение GROUP BY не выполняет операции агрегации на множестве уровней иерархии. Например, вы можете вычислить суммарную зарплату сотрудников для каждого отдела компании (один уровень иерархии), но не можете вычислить общую зарплату всех сотрудников, независимо от отделов, в которых они работают (два уровня иерархии).

Продолжить чтение "Разница между Cube и Rollup"
Категории: T-SQL

За и против динамического SQL

Пересказ статьи Thom Andrews. Dos and Don’ts of Dynamic SQL



Динамический SQL может быть невероятно мощным инструментом при надлежащем использовании, однако он может стать также невероятной прорехой в безопасности или привести к утомительной отладке при плохом написании. Ниже приводится несколько плохих и хороших примеров, которые помогут вам при написании динамических операторов.
Продолжить чтение "За и против динамического SQL"
Категории: T-SQL

Оконные функции или GROUP BY?

Пересказ статьи Bert Wagner. Window Functions vs GROUP BYs



Имеется много направлений улучшения производительности запроса: индексы, статистика, конфигурационные параметры и т.д.

Однако не всегда имеющиеся условия позволяют вам использовать эти возможности (например, базы данных компаний-поставщиков), оставляя только одну возможность - переписать запрос.

Продолжить чтение "Оконные функции или GROUP BY?"

Неявное преобразование, что это?

Пересказ статьи Monica Rathbun. What is Implicit Conversion?



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