Пересказ статьи Greg Robidoux. Join SQL Server tables where columns include NULL values
Проблема
При построении таблиц базы данных вы стоите перед решением, допускать ли наличие NULL-значений в ваших столбцах или не допускать. По умолчанию SQL Server устанавливает для значений столбца возможность NULL при создании новых таблиц, если не указать противное. Это не обязательно плохо, но работа с NULL-значениями, особенно при соединении таблиц, может стать проблемой. Давайте рассмотрим эту проблему, и как её можно разрешить.
Продолжить чтение "Соединение таблиц в 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. Также появилась возможность получать накопительные итоги и выполнять скользящие вычисления.
Продолжить чтение "Чем отличается LAG от других методов"
Пересказ статьи Erik Darling. SARGability Week What Is It, Anyway?
Возможность SARG - это способ сказать, что поисковые предикаты могут использоваться для поиска по ключам индекса.
Вот некоторые вещи, препятствующие этому:
- функция(столбец) = что-то
- столбец + столбец = что-то
- столбец + значение = что-то
- значение + столбец = что-то
- столбец = @что-то или @что-то IS NULL
- столбец like '%что-то'
- столбец = case when...
- значение = case when столбец...
- Несоответствие типов данных
Продолжить чтение "SARGability: что это вообще такое?"
Пересказ статьи Andrea Gnemmi. SQL Server, Oracle and PostgreSQL Date Functions
Функции даты весьма полезны для выполнения различных операций с датами, используемых как для фильтрации, так и форматирования дат в запросах. К сожалению, имеются различия в реализации этих функций в SQL Server, Oracle и PostgreSQL, которым и посвящена эта статья.
В этом руководстве мы рассмотрим некоторые основные функции даты, различные возможности их применения, лучшую практику и различие в выполнении операций с датами в SQL Server, Oracle и PostgreSQL, а также различие типов данных Date и Time.
Продолжить чтение "Функции даты в SQL Server, Oracle и PostgreSQL "
§ Проверка задачи 124 (SELECT, рейтинг) усилена данными от Axocopan.
Продолжить чтение "Новости за 2022-03-12 - 2022-03-18"
Пересказ статьи Rajendra Gupta. Manage Transaction Concurrency Using Locks in SQL Server
В многопользовательской среде важно поддерживать конкурирующие транзакции. Связанные с этим блокировки представляют собой структуры в памяти размером 96 байт. Их роль заключается в поддержке целостности данных, согласованности, управлении параллелизмом для каждой транзакции. SQL Server следует требованиям ACID для каждой транзакции.
Продолжить чтение "Управление параллельным выполнением транзакций с помощью блокировок в SQL Server"
Пересказ статьи Shivayan Mukherjee. PostgreSQL Date And Time Part 2
Обзор
В этой статье мы рассмотрим наиболее часто используемые функции работы с датой и временем в PostgreSQL: LOCALTIMESTAMP(), LOCALTIME(), TO_DATE(), TO_TIMESTAMP(). Если вы пропустили первую часть, начните с
неё.
Продолжить чтение "Дата и время в PostgreSQL. Часть 2"
Пересказ статьи Edwin Sanchez. The Best SQL VARCHAR Do’s and Don’ts for Faster Databases
Мы собираемся глубоко изучить SQL VARCHAR, тип данных, который имеет дело со строками.
VARCHAR является лишь одним из строковых типов в SQL. Чем он отличается от остальных?
Продолжить чтение "Что можно и чего нельзя делать с помощью SQL VARCHAR для более быстрых баз данных"
Пересказ статьи sabyda. Array and Custom Data Types in PostgreSQL
Введение
Как и всякая другая база данных, PostgreSQL имеет свой собственный набор базовых типов данных, таких как Boolean, Varchar, Text, Date, Time и т.д. Мы можем легко хранить такие типы как числа, дату, время и т.п., используя эти поддерживаемые типы данных, но что если нам требуется хранить несколько элементов данных в единственном столбце?
Предположим, что мы сохраняем данные сотрудников организации, и очевидно, что большинство сотрудников будет иметь несколько контактных номеров, альтернативных контактных номеров. Как нам хранить их в одном столбце, а не создавать разные столбцы для всех этих номеров? В PostgreSQL можно использовать тип данных ARRAY, который мы собираемся подробно рассмотреть.
Продолжить чтение "Массив и пользовательские типы данных в PostgreSQL"
§ Данными от Axocopan и Yury66 усилена проверка задач 116 (SELECT, рейтинг) и 25 (DML) соответственно.
Продолжить чтение "Новости за 2022-02-26 - 2022-03-04"
Пересказ статьи 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 есть диаграмма, отвечающая именно на этот вопрос:
Продолжить чтение "Обработка неявного преобразования"