Skip to content

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

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


Введение


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

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

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

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

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

Советы по настройке производительности SQL-запросов

Пересказ статьи Eduardo Pivaral. SQL Query Performance Tuning Tips


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

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

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? Продолжить чтение "FORMAT - удобная, но дорогая функция SQL Server: часть 1"

Обзор соединений в PostgreSQL

Пересказ статьи Everett Berry. Inspecting Joins in PostgreSQL


PostgreSQL использует различные алгоритмы для реализации JOIN в зависимости от запроса. Мы можем исследовать план запроса, чтобы выяснить, какой тип был использован.

Введение


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

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

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

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


Введение


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