SQLpedia | Базы данных
6.31K subscribers
162 photos
68 videos
1 file
655 links
Тут вы найдете всё, что связано с базами данных и sql, как для начинающих, так и для бывалых специалистов.

Сотрудничество: @Heykman
Download Telegram
​​SQL HowTo: ближайший общий предок в дереве (LCA)

Данная статься описывает алгоритм нахождения ближайшего общего предка в дереве (LCA) с помощью PostgreSQL. В статье приведены примеры запросов и объяснения работы алгоритма

Перейти к статье | SQLpedia
​​Проектирование БД и почему важен SQL для системного аналитика: гайд по улучшению качества требований

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

Перейти к статье | SQLpedia
👍4
​​Что происходит в СУБД при записи регистра накопления 1С?

Данная публикация – результат попытки разобраться в механизмах записи регистра накопления на стороне СУБД. Какие запросы генерирует платформа в зависимости от вида и настроек регистра, режима записи, агрегатов?
В статье рассмотрены запросы, выполняемые на стороне СУБД при записи регистров накопления остатков и оборотов с разделением итогов и без.

Перейти к статье | SQLpedia
👍5
​​Как понять логику EXISTS в SQL запросах

Как следует из названия, данная статья для тех, у кого есть сложности с пониманием SQL запросов, в составе которых, используется EXISTS, т.к., исходя из опыта, его использование частенько вызывает вопросы у начинающих, а иногда даже у продолжающих.

Перейти к статье | SQLpedia
​​Clickhouse — непростая жизнь в продакшене

В данной статье рассказывается о выборе между двумя вариантами работы с ClickHouse (CH) в системе, обрабатывающей события в двух дата-центрах

Перейти к статье | SQLpedia
​​Oracle/ClickHouse. DWH. Партицирование как средство быстрого обновления данных

В этой статье хотелось бы рассмотреть такой вопрос - как частичное обновление больших объемов данных в таблицах, которые активно используются пользователями на чтение. Задача является типовой, и с ней сталкивается каждый инженер данных. При этом не важно на какой ступеньке своей карьерной лестницы вы находитесь, Junior или Senior, такие задачи будут.

Перейти к статье | SQLpedia
​​Как спроектировать базу данных, чтобы в будущем не пришлось её переписывать — базовые советы

В данной статье рассказывается о базовых принципах проектирования баз данных и возможных ошибках, которые могут привести к необходимости переписывания БД в будущем. Основные рекомендации включают:
- Использование хотя бы третьей нормальной формы для достижения эффективной структуры.
- Создание ограничений для входных данных.
- Не хранение ФИО в одном поле, а также полного адреса.
- Установление правил именования таблиц и полей.

Перейти к статье | SQLpedia
👍5
​​8 первоклассных инструкций SQL на каждый день

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

Перейти к статье | SQLpedia
👍6
​​Погружаемся в базы данных и SQL: полезные материалы и инструменты от сотрудников Selectel

"Новичку нужно перебрать много сайтов, чтобы научиться работать с базами данных и понимать такие шутки. Это усложняется тем, что в открытом доступе мало действительно полезных материалов, которые могут закрыть все пробелы в знаниях."

Перейти к статье | SQLpedia
​​Многоуровневая группировка в SQL: Grouping sets

Данная статья описывает использование многоуровневой группировки в SQL с помощью конструкции GROUPING SETS. Приводится пример запроса, который позволяет добавить общий и промежуточный итог по федеральным округам в одном запросе. Также в статье описывается использование конструкции CASE для замены NULL в полях.

Перейти к статье | SQLpedia
Алоха, коллеги!
Сегодня дадим вам задачу на логику из нашей рубрики #fromInterviewWithLove

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

Все вагоны внутри выглядят строго одинаково, окна закрыты так, что невозможно посмотреть наружу, движение поезда равномерное. Помечать вагоны как-либо, кроме включения или выключения света, нельзя. Количество вагонов конечно.

В этой задаче есть 2 решения:

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

Решение2
С таким же успехом можно, например, ходить по сторонам от начального вагона на равные расстояния, постепенно их увеличивая, и инвертировать в них свет. То есть если считать, что сначала вы в вагоне с номером 0, то ходить надо в -1, 1, -2, 2, -3, 3 и так далее. Если при этом запоминать состояние самого дальнего вагона, то при повторном прохождении мимо него вы заметите изменившийся свет, если круг замкнётся. А зная длину пути в обе стороны, вы легко вычислите общее количество вагонов.


SQLpedia
🔥83
​​Регулярные выражения в реальных задачах

В этой статье автор рассказывает про регулярные выражения. Автор часто пользуется ими, решая задачи по обработке текста в базах данных. Вначале речь пойдет о теории, а затем будет рассмотрено несколько реальных задач, которые были решены с использованием регулярных выражений.

Перейти к статье | SQLpedia
​​Повышение эффективности SQL-запросов: советы и рекомендации

В статье представлен ряд советов и методов, которые помогут читателям оценить производительность своих SQL-запросов и улучшить ее при необходимости.

Перейти к статье | SQLpedia
👍5
​​О Prepared statements, серверном кэше скомпилированных запросов или как эффективно кэшировать запросы в YDB

Статья рассказывает о различных способах снижения стоимости выполнения SQL-запросов в современных СУБД, таких как использование подготовленных запросов и кэширование.

Перейти к статье | SQLpedia
​​Jsonb и gin, ошибки планировщика на старых PostgreSQL

Автор статьи приводит пример типичной базы данных, состоящей из одной таблицы с тремя полями, и объясняет, каким образом такие базы могут столкнуться с проблемами производительности при увеличении размера.

Перейти к статье | SQLpedia
​​Airflow vs NiFi: исследуем оркестратор для формирования витрин данных

В данной статье рассматривается сравнение двух инструментов для оркестрации процессов построения витрин данных - Airflow и NiFi. Также описываются исходные данные и слои данных, используемые для создания витрины, а также схема требуемой витрины.

Перейти к статье | SQLpedia