Skip to content

Крутая штука в SQL Server 2022 – IS DISTINCT FROM

Пересказ статьи Koen Verbeeck. Cool Stuff in SQL Server 2022 – IS DISTINCT FROM


Я написал серию статей в блоге о некоторых замечательных особенностях в облачных хранилищах данных для платформы Snowflake; одной из которых был предикат IS [NOT] DISTINCT FROM. Я был рад обнаружить эту вещь теперь и в языке T-SQL, начиная с предварительной версии SQL Server 2022 CTP 2.1. Вы можете найти официальную документацию здесь. Continue reading "Крутая штука в SQL Server 2022 – IS DISTINCT FROM"

Получение максимального значения на группу в SQL Server: Row Number против Cross Apply

Пересказ статьи Erik Darling. Getting The Top Value Per Group In SQL Server Row Number vs. Cross Apply


Введение


Существует много способов написания запросов в SQL Server. То, как будут выполняться различные варианты записи запроса, будет в значительной степени зависеть от:

  • Вы не делаете ничего странного.

  • Правильные индексы для запроса имеются.

  • Оптимизатор не замечает ваших трюков и дает вам один и тот же план запроса.

Continue reading "Получение максимального значения на группу в SQL Server: Row Number против Cross Apply"

FORMAT - удобная, но дорогая функция SQL Server: часть 1

Пересказ статьи Aaron Bertrand. FORMAT is a convenient but expensive SQL Server function - Part 1


Я уже показывал, как FORMAT может быть почти в два раза дороже CONVERT для базы данных Microsoft SQL Server. Это сравнение, возможно, было несколько неточным - а как насчет запутанных выражений CONVERT? Есть ли другие способы получить удобство функции даты FORMAT без увеличения времени выполнения запроса в базе данных SQL? Continue reading "FORMAT - удобная, но дорогая функция SQL Server: часть 1"

Тривиальные планы выполнения в SQL Server

Пересказ статьи Esat Erkec. SQL Server Trivial Execution Plans


Введение


SQL является непроцедурным языком программирования; это подразумевает, что пользователи базы данных пишут в коде только то, что они хотят сделать, но не описывают шаги процесса как это сделать. После получения запроса внутренние компоненты ядра реляционной базы данных делают синтаксический разбор и компилируют запрос, а затем выполняют поставленную задачу. По окончанию этих задач они предоставляют результат полученного запроса.
Continue reading "Тривиальные планы выполнения в SQL Server"