Skip to content

Встраивание UDF и агрегация строк

Пересказ статьи Erik Darling. UDF Inlining And String Aggregations


Четыре врага


Фактически данная статья состоит их четырех постов. Возможно, пяти. Вот основные темы:

  • STRING_AGG не может быть встроен, если это UDF.

  • Получить значения DISTINCT в STRING_AGG сложнее, чем это должно быть.

  • Документация по встраиванию UDF вводит в заблуждение.

  • XML PATH можно встроить в UDF.


Начнем сверху, поскольку первые всегда наверху.
Продолжить чтение "Встраивание UDF и агрегация строк"

Как эффективно управлять журналами SQL Server

Пересказ статьи Rajendra Gupta. How to manage SQL Server logs effectively


В статье дается обзор журналов SQL Server для управления и устранения неполадок на сервере.

Введение


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

Тайм-ауты логина

Пересказ статьи Grant Fritchey. Login timeouts


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

Запросы SQL для изменения типа данных столбца

Пересказ статьи Nisarg Upadhyay. SQL queries to change the column type


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

  1. SQL Server 2019

  2. MySQL Server

  3. PostgreSQL

Продолжить чтение "Запросы SQL для изменения типа данных столбца"

Опции перекомпиляции хранимых процедур в SQL Server

Пересказ статьи Esat Erkec. SQL Server Stored Procedure Recompile Options


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

Работа со столбцами identity в SQL Server

Пересказ статьи Greg Larsen. Working with SQL Server identity columns


В предыдущей статье я рассмотрел основную информацию о столбцах identity в SQL Server. В этой статье обсуждаются более продвинутые вещи. В частности, как вручную вставить значения identity, как избежать дублирующих значений identity, как изменить значение точки отсчета identity (seed), как идентифицировать функции и переменные и многое другое.
Продолжить чтение "Работа со столбцами identity в SQL Server"
Категории: T-SQL

Столбец identity в SQL Server

Пересказ статьи Greg Larsen. SQL Server identity column


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

Соединение таблиц в SQL Server, когда столбцы включают NULL-значения

Пересказ статьи Greg Robidoux. Join SQL Server tables where columns include NULL values


Проблема


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

Чем отличается LAG от других методов

Пересказ статьи Kathi Kellenberger. How LAG compares to other techniques


Первые оконные функции появились у Microsoft в SQL Server 2005. Это были ROW_NUMBER, RANK, DENSE_RANK, NTILE и оконные агрегаты. Многие, включая и меня, использовали эти функции, не осознавая, что они являются частью особой группы. В 2012 Microsoft добавила еще несколько: LAG и LEAD, FIRST_VALUE и LAST_VALUE, PERCENT_RANK и CUME_DIST, PERCENTILE_CONT и PERCENTILE_DISC. Также появилась возможность получать накопительные итоги и выполнять скользящие вычисления. Продолжить чтение "Чем отличается LAG от других методов"

Функции даты в SQL Server, Oracle и PostgreSQL

Пересказ статьи Andrea Gnemmi. SQL Server, Oracle and PostgreSQL Date Functions


Функции даты весьма полезны для выполнения различных операций с датами, используемых как для фильтрации, так и форматирования дат в запросах. К сожалению, имеются различия в реализации этих функций в SQL Server, Oracle и PostgreSQL, которым и посвящена эта статья.

В этом руководстве мы рассмотрим некоторые основные функции даты, различные возможности их применения, лучшую практику и различие в выполнении операций с датами в SQL Server, Oracle и PostgreSQL, а также различие типов данных Date и Time.
Продолжить чтение "Функции даты в SQL Server, Oracle и PostgreSQL "

Управление параллельным выполнением транзакций с помощью блокировок в SQL Server

Пересказ статьи Rajendra Gupta. Manage Transaction Concurrency Using Locks in SQL Server


В многопользовательской среде важно поддерживать конкурирующие транзакции. Связанные с этим блокировки представляют собой структуры в памяти размером 96 байт. Их роль заключается в поддержке целостности данных, согласованности, управлении параллелизмом для каждой транзакции. SQL Server следует требованиям ACID для каждой транзакции.
Продолжить чтение "Управление параллельным выполнением транзакций с помощью блокировок в SQL Server"

Что можно и чего нельзя делать с помощью SQL VARCHAR для более быстрых баз данных

Пересказ статьи Edwin Sanchez. The Best SQL VARCHAR Do’s and Don’ts for Faster Databases


Мы собираемся глубоко изучить SQL VARCHAR, тип данных, который имеет дело со строками.
VARCHAR является лишь одним из строковых типов в SQL. Чем он отличается от остальных?

Продолжить чтение "Что можно и чего нельзя делать с помощью SQL VARCHAR для более быстрых баз данных"

Как включать флаги трассировки SQL Server

Пересказ статьи Robert Sheldon. How to enable SQL Server trace flags


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

Продолжить чтение "Как включать флаги трассировки SQL Server"

Обработка неявного преобразования

Пересказ статьи Chad Callihan. Handling Implicit Conversion


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

SQL ORDER BY: 5 правил сортировки на профессиональном уровне

Пересказ статьи Edwin Sanchez. SQL ORDER BY The 5 Do’s and Don’ts to Sort Data Like a Pro


Уродливо. Так выглядят неупорядоченные данные. Данные легче воспринимаются зрительно, если они отсортированы. Для этого и служит SQL ORDER BY. Используйте один или несколько столбцов или выражений, на основании которых должны сортироваться данные. Затем добавьте ASC или DESC для сортировки по возрастанию или убыванию.
Продолжить чтение "SQL ORDER BY: 5 правил сортировки на профессиональном уровне"