Пересказ статьи Greg Robidoux. Join SQL Server tables where columns include NULL values
Проблема
При построении таблиц базы данных вы стоите перед решением, допускать ли наличие NULL-значений в ваших столбцах или не допускать. По умолчанию SQL Server устанавливает для значений столбца возможность NULL при создании новых таблиц, если не указать противное. Это не обязательно плохо, но работа с NULL-значениями, особенно при соединении таблиц, может стать проблемой. Давайте рассмотрим эту проблему, и как её можно разрешить.
Continue reading "Соединение таблиц в SQL Server, когда столбцы включают NULL-значения"
Пересказ статьи 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. Также появилась возможность получать накопительные итоги и выполнять скользящие вычисления.
Continue reading "Чем отличается LAG от других методов"
Пересказ статьи Andrea Gnemmi. SQL Server, Oracle and PostgreSQL Date Functions
Функции даты весьма полезны для выполнения различных операций с датами, используемых как для фильтрации, так и форматирования дат в запросах. К сожалению, имеются различия в реализации этих функций в SQL Server, Oracle и PostgreSQL, которым и посвящена эта статья.
В этом руководстве мы рассмотрим некоторые основные функции даты, различные возможности их применения, лучшую практику и различие в выполнении операций с датами в SQL Server, Oracle и PostgreSQL, а также различие типов данных Date и Time.
Continue reading "Функции даты в SQL Server, Oracle и PostgreSQL "
Пересказ статьи Rajendra Gupta. Manage Transaction Concurrency Using Locks in SQL Server
В многопользовательской среде важно поддерживать конкурирующие транзакции. Связанные с этим блокировки представляют собой структуры в памяти размером 96 байт. Их роль заключается в поддержке целостности данных, согласованности, управлении параллелизмом для каждой транзакции. SQL Server следует требованиям ACID для каждой транзакции.
Continue reading "Управление параллельным выполнением транзакций с помощью блокировок в SQL Server"
Пересказ статьи Edwin Sanchez. The Best SQL VARCHAR Do’s and Don’ts for Faster Databases
Мы собираемся глубоко изучить SQL VARCHAR, тип данных, который имеет дело со строками.
VARCHAR является лишь одним из строковых типов в SQL. Чем он отличается от остальных?
Continue reading "Что можно и чего нельзя делать с помощью SQL VARCHAR для более быстрых баз данных"
Пересказ статьи Robert Sheldon. How to enable SQL Server trace flags
SQL Server содержит множество настраиваемых параметров, известных как флаги трассировки. Вы можете использовать флаги трассировки для установки характеристик сервера и управления различными типами операций. SQL Server предоставляет широкий диапазон флагов трассировки, которые позволяют вам менять поведение платформы по умолчанию, чтобы удовлетворить особым требованиям. Флаги трассировки могут помочь при выполнении таких задач как тестирование хранимых процедур, диагностирование проблем производительности или отладка сложных систем компьютера. Служба поддержки Microsoft может также рекомендовать использование определенных флагов трассировки для изменения поведения, влияющего на специфичные рабочие нагрузки. В этой статье объясняется, как включать флаги трассировки SQL Server.
Continue reading "Как включать флаги трассировки SQL Server"