Библиотека баз данных
10.3K subscribers
169 photos
19 files
189 links
Самая большая библиотека бесплатных книг по SQL

По всем вопросам- @haarrp

@ai_machinelearning_big_data - machine learning

@pythonl - Python

@itchannels_telegram - 🔥 best it channels

@ArtificialIntelligencedl - AI

РКН:  № 5037640984
加入频道
Forwarded from Machinelearning
🦑 SQL Squid Game: 9 уровней. 1 работа Дата Сайентиста. Ваша жизнь на кону 🔫.

Развлечение на выходные - Игра в Кальмара с SQL. Это бесплатный образовательный тренажер по работе с БД, по мотивам Netflix's Squid Game, SQL Murder Mystery и других известных SQL-игр.

О чем игра?
Вы только что были приняты на работу в качестве Дата Сайентиста в загадочную организацию Squid Game.

Таинственный работодатель, управляющий игрой, пообещал вам полностью удаленную работу, на которой вы будете составлять промпты, работать с pandas и генеративным ИИ

Но, как это обычно бывает в индустрии данных, вас подставили и обманули.

Оказалось, что работа связана с аналитикой данных на SQL, а работа не полностью удаленная, а гибридная: 5 дней в офисе, а 2 дня удаленно.

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

Вы должны написать SQL-запросы, чтобы ответить ему - иначе вас ждет печальный конец 💀

📌 Как играть

- На каждом уровне вам будут даны задачи, а также одна или несколько таблиц и их схема.

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

Каждый уровень становится сложнее.

PS: Для прохождения SQL Squid Games, вам нужно хорошо знать SQL.А если хотите освежить свои знания или выучить SQL с нуля, вот 33 интерактивных учебника от Datalemur авторов игры из которых вы узнаете все, что нужно знать, чтобы пройти игру.

📲 Начать игру

@ai_machinelearning_big_data


#sql #tutorial #educationalgame
🖥 Эта статья рассматривает, как различные базы данных (YugabyteDB, PostgreSQL, Oracle, SQL Server и MongoDB) обрабатывают индексацию запросов с операцией "не равно" (!=, <>)!

🌟 Обсуждаются проблемы, такие как неэффективность полнотабличных сканирований, и предлагаются решения, такие как использование битмап-индексов или частичных индексов для оптимизации таких запросов. Например, PostgreSQL и YugabyteDB могут эффективно использовать битмап-сканирование или частичные индексы при запросах, где большинство значений в столбце равны нулю. Эти техники помогают сократить ненужные сканирования всей таблицы и улучшить производительность, особенно при неравномерном распределении данных.

🔗 Ссылка: *клик*

@sql_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥Большой обучающий плейлист по обучению профессии аналитика данных!

🔗 Ссылка: *клик*

#курс #dataanalysis
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ Подборка больших и полезных датасетов для работы с данных:

Sky-T1-data-17k — универсальный датасет, созданный для тренировки модели Sky-T1-32B, представляющей собой развитие модели MiniMax-Text-01. Эта модель уверенно опережает GPT-4o и Gemini-2 на тестах с длинными контекстами.

XMIDI Dataset — масштабный музыкальный датасет с детальными метками эмоций и жанров. Включает 108 023 MIDI-файлов, что делает его самым крупным набором данных подобного типа.

AceMath-Data — серия датасетов, использованных компанией NVIDIA для обучения своей топовой модели AceMath-72B-Instruct. Эта модель заметно превосходит GPT-4o и Claude-3.5 Sonnet в решении математических задач.

@sql_lib

#sql #datasets #opensource
Forwarded from Data Science. SQL hub
🔥 Это - бесплатная книга, которая посвящена созданию компиляторов для языков запросов, таких как SQL. Она объясняет, как системы управления базами данных (СУБД) обрабатывают запросы пользователей и превращают их в эффективные планы выполнения!

🔗 Ссылка: *клик*

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Шпаргалка по последовательности выполнения SQL запроса!

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
800+ SQL Server Interview Questions and Answers .pdf
1 MB
🖥 Полезнейший сборник из 800+ вопросов по SQL, которые часто задают на собеседованиях.

Он также включает задачи для самостоятельной работы и множество примеров.

Сборник отлично подходит для тех, кто хочет прокачать свои навыки работы с SQL, освежить знания и проверить свои знания.

GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 PRACTICAL A BEGINNER'S SQL

📚 Книга

@sql_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 ​​Книги по базам данных, которые стоит прочитать в 2025 году

Сегодня все говорят о цифровой трансформации и внедрении искусственного интеллекта в бизнес-процессы. Но многие забывают, что ИИ без данных не бывает. Именно качественные, актуальные и правильно структурированные данные определяют успех проекта в области машинного обучения и глубокого анализа.

Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
The-Structure-and-Interpretation-of-Computer-Programs

📚 Книга

@sql_lib
В чем разница между первичным ключом и уникальным ключом?
🛠 PostgreSQL – одна из самых мощных, популярных и быстроразвивающихся реляционных СУБД с открытым исходным кодом.

Ее документация – это настоящий кладезь знаний:
Всегда актуальна: Отражает последнюю версию и все новейшие возможности (актуально для 2025!).

Исчерпывающая: От основ SQL и установки до продвинутых тем администрирования, репликации, расширений и внутреннего устройства.

- Авторитетная: Написана и поддерживается разработчиками СУБД.
Структурированная: Легко навигировать, подходит как для новичков, так и для опытных профессионалов.

- Полностью бесплатная: Доступна всем и всегда.

По сути, это полноценный, постоянно обновляемый учебник и справочник по одной из важнейших технологий баз данных сегодня. Если вы работаете с данными или только планируете начать – это обязательный ресурс!
🔗 Ссылка на документацию PostgreSQL (Русская версия):
https://postgrespro.ru/docs/postgresql/ (Примечание: Это версия от Postgres Professional, одного из ключевых
контрибьюторов PostgreSQL, которая обычно наиболее оперативно обновляется на русском языке).
Или официальная ссылка на международном сайте (выберите язык): https://www.postgresql.org/docs/current/


#БазыДанных #БД #DataBases #PostgreSQL #SQL #Программирование #IT #БесплатныеКниги #Обучение #OpenSource #Актуально2024 #Postgres
Шпаргалка по SQL

Мы подготовили для вас шикарный конспект с подсказками и фишками, которые значительно прокачают вашу работу с SQL ❤️
⚡️Легкий способ получать свежие обновления и следить за трендами в разработке на вашем языке. Находите свой стек и подписывайтесь:

Python: t.me/pythonl
Linux: t.me/linuxacademiya
Собеседования DS: t.me/machinelearning_interview
Нерйросети t.me/ai_machinelearning_big_data
C++ t.me/cpluspluc
Docker: t.me/DevopsDocker
Хакинг: t.me/linuxkalii
Devops: t.me/DevOPSitsec
Data Science: t.me/data_analysis_ml
Javascript: t.me/javascriptv
C#: t.me/csharp_ci
Java: t.me/javatg
Базы данных: t.me/sqlhub
Python собеседования: t.me/python_job_interview
Мобильная разработка: t.me/mobdevelop
Golang: t.me/Golang_google
React: t.me/react_tg
Rust: t.me/rust_code
ИИ: t.me/vistehno
PHP: t.me/phpshka
Android: t.me/android_its
Frontend: t.me/front
Big Data: t.me/bigdatai
МАТЕМАТИКА: t.me/data_math
Kubernets: t.me/kubernetc
Разработка игр: https://yangx.top/gamedev
Haskell: t.me/haskell_tg
Физика: t.me/fizmat

💼 Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: https://yangx.top/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://yangx.top/addlist/mzMMG3RPZhY2M2Iy

😆ИТ-Мемы: t.me/memes_prog
🇬🇧Английский: t.me/english_forprogrammers
🧠ИИ: t.me/vistehno

🎓954ГБ ОПЕНСОРС КУРСОВ: @courses
📕Ит-книги бесплатно: https://yangx.top/addlist/BkskQciUW_FhNjEy
🔥SchemaCrawler — это бесплатный инструмент с открытым исходным кодом для анализа и визуализации структуры баз данных. Он позволяет создавать диаграммы сущностей и связей (ER-диаграммы) на основе метаданных базы данных, используя Graphviz или другие форматы, такие как Mermaid, PlantUML и dbdiagram.io. ​

📌 Основные возможности
SchemaCrawler:
Генерация диаграмм: Создание ER-диаграмм с использованием Graphviz, поддержка форматов PNG, SVG, PDF и HTML с встроенными SVG. ​

Фильтрация объектов: Использование регулярных выражений для фильтрации таблиц, представлений и столбцов, что позволяет сосредоточиться на интересующих элементах схемы. ​
schemacrawler.com

Поддержка различных форматов вывода: Экспорт схемы в текстовом, JSON, YAML и HTML форматах, что удобно для документирования и отслеживания изменений. ​
schemacrawler.com

Интеграция с другими инструментами: Возможность генерации диаграмм в форматах Mermaid, PlantUML и dbdiagram.io для последующего редактирования в сторонних приложениях. ​

Автоматизация и скриптинг: Поддержка скриптов на JavaScript, Python, Groovy и Ruby для автоматизации задач и интеграции в CI/CD процессы. ​

Анализ качества схемы (Lint): Возможность выявления потенциальных проблем в дизайне базы данных, таких как отсутствие первичных ключей или избыточные индексы. ​

Гибкая настройка: Широкие возможности конфигурации через файлы настроек или командную строку, включая отображение/скрытие имен схем, порядковых номеров столбцов, кардинальности связей и т.д. ​

Пример использования:
Чтобы создать диаграмму схемы базы данных в формате PNG, можно использовать следующую команду:​

schemacrawler --server=postgresql --host=localhost --database=mydb --user=postgres --password=secret \
--info-level=standard --command=schema --output-format=png --output-file=diagram.png

Эта команда подключится к базе данных PostgreSQL и создаст ER-диаграмму с основными элементами схемы.​

Установка и запуск:
Установка: Скачайте дистрибутив SchemaCrawler с официального сайта и распакуйте его в удобное место. ​
schemacrawler.com

Предварительные требования: Убедитесь, что установлены Java (версия 8 или выше) и Graphviz (если планируется генерация диаграмм).​

Запуск: Используйте скрипты schemacrawler.sh (для Unix) или schemacrawler.cmd (для Windows) для запуска инструмента.​
schemacrawler.com

https://www.schemacrawler.com/diagramming.html
Please open Telegram to view this post
VIEW IN TELEGRAM
📘 SQL Notes for Professionals — незаменимый справочник для разработчиков

Если ты работаешь с базами данных или только начинаешь изучать SQL, обязательно загляни в книгу *SQL Notes for Professionals*. Она представляет собой тщательно собранный справочник, составленный из лучших материалов Stack Overflow Documentation.

Что внутри?
• Краткие и понятные объяснения по синтаксису SQL
• Примеры запросов и структур данных
• Советы по работе с SELECT, JOIN, GROUP BY, транзакциями и многим другим
• Практическая информация для повседневной работы с реляционными базами данных

Кому подойдёт?
• Новичкам — для быстрого старта
• Опытным разработчикам — как удобный справочник под рукой
• Всем, кто хочет систематизировать знания и избежать типичных ошибок

🔍 Важно знать
Эта книга — неофициальное, бесплатное учебное пособие, созданное на основе открытой документации Stack Overflow. Контент лицензирован по Creative Commons BY-SA. Использование информации осуществляется на свой страх и риск — авторы не гарантируют её абсолютную точность.

📥 *Идеальный материал для тех, кто предпочитает учиться на практических примерах и хочет всегда иметь под рукой концентрированное знание SQL.*

📎 Ссылка на скачивание
🧠 SQL-задача с подвохом: “Найди самого активного… по количеству разных друзей”

📘 Условие

У тебя есть таблица дружбы:


friends(user_id, friend_id)


Здесь каждая строка означает, что user_id дружит с friend_id.
Записи всегда односторонние: если есть (1, 2), это не значит, что будет (2, 1).

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

Пример попытки:


SELECT user_id, COUNT(friend_id) AS total_friends
FROM friends
GROUP BY user_id
ORDER BY total_friends DESC
LIMIT 1;


🔍 Вопрос:

1) В чём здесь может быть логическая ошибка?
2) Какую строку подсчитает COUNT(friend_id)?
3) Когда нужно использовать COUNT(DISTINCT friend_id)?
4) Как обойти случай, если один и тот же друг записан несколько раз?

Разбор подвоха

💣 Проблема: один пользователь может быть записан как друг несколько раз, особенно если приложение допускает дубли (или "перезапросы дружбы").

Пример:


INSERT INTO friends VALUES (1, 2), (1, 2), (1, 3);


В этом случае:


SELECT COUNT(friend_id) FROM friends WHERE user_id = 1;
-- → вернёт 3


Но реальных друзей у пользователя 1 — только 2: 2 и 3.

Решение:

Используй COUNT(DISTINCT friend_id):


SELECT user_id, COUNT(DISTINCT friend_id) AS unique_friends
FROM friends
GROUP BY user_id
ORDER BY unique_friends DESC
LIMIT 1;


🎯 Дополнительно можно убрать самого пользователя из списка друзей (на случай ошибок):


WHERE user_id != friend_id


⚠️ Подвох

COUNT() без DISTINCT ловит даже опытных — особенно если в БД возможны дубли
LIMIT 1 не гарантирует "уникального победителя", если у нескольких одинаковый счёт
• Иногда friendship бывает и симметричной, тогда нужна защита от двойного счёта
🖥 Database Design - 2nd Edition
Подробный разбор проектирования баз данных: нормализация, схемы, целостность данных. Больше, чем просто SQL.

🔗 Читать онлайн или скачать (PDF)
Please open Telegram to view this post
VIEW IN TELEGRAM
SQL_cheatsheet.pdf
754.9 KB
⚡️ SQL-шпаргалка, которая выручит в интервью, проекте и проде

Полный мастер-гайд по SQL в одном PDF: практичные примеры, чёткие объяснения и никакой воды.

Что внутри:
💬 Создание баз, таблиц и изменение схем
💬 Запросы любого уровня сложности: JOIN, GROUP BY, HAVING, PARTITION
💬 Подзапросы, CTE, оконные функции: ROW_NUMBER, RANK, DENSE_RANK
💬 VIEW, временные таблицы и работа с дубликатами
💬 Даты, строки, преобразования и агрегации
💬 Очистка данных, разбиение по разделителям
💬 UNION, INTERSECT, EXCEPT — управление сложными выборками

Затрагиваются и продвинутые кейсы:
• Парсинг адресов
• Кастомная сортировка
• Использование ISNULL и COALESCE

🧠 Это не просто набор команд — это концентрат боевого SQL-опыта.

Подходит для:
➡️ Подготовки к SQL-интервью
➡️ BI и аналитики
➡️ Web-разработки с базами
➡️ Встраивания SQL в проекты на Python, Go, Java и других языках