sqlportal | Unsorted

Telegram-канал sqlportal - SQL Portal | Базы Данных

14500

Присоединяйтесь к нашему каналу и погрузитесь в мир баз данных Связь: @devmangx РКН: https://clck.ru/3H4Wo3

Subscribe to a channel

SQL Portal | Базы Данных

Золотое правило SQL: Всегда используйте WHERE перед GROUP BY.

Неправильно:

SELECT Department, COUNT(*)
FROM Employees
GROUP BY Department
WHERE Salary > 50000;


В SQL такой запрос вообще не выполнится, потому что оператор WHERE должен идти до GROUP BY.

Правильно:
SELECT Department, COUNT(*)
FROM Employees
WHERE Salary > 50000
GROUP BY Department;


Почему это важно? WHERE сначала отбирает только нужные строки. Затем GROUP BY группирует уже отфильтрованные данные.

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

Запомните порядок выполнения:
FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY

Это одно из базовых правил SQL, которое поможет избежать ошибок и писать более эффективные запросы.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

300+ практических задач: подарок тем, кто изучает SQL

Если хотите научиться писать SQL не только по теории, но и на практике, попробуйте SQL Climber.

Платформа предлагает более 300 интерактивных заданий разного уровня сложности от простых SELECT-запросов до более сложных тем с JOIN, агрегатными функциями и подзапросами.

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

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

НОВОЕ: Durable Functions в PostgreSQL

pg_durable это расширение для PostgreSQL. Состояние рабочего процесса (workflow), очередь, повторные попытки и восстановление хранятся в Postgres, а для обеспечения надёжности, высокой доступности (HA), резервного копирования и восстановления используются встроенные возможности Postgres.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Ловите исчерпывающее руководство по подготовке к SQL собеседованию

Если впереди SQL-собес и руки уже холодеют от волнения — не парься! В этом гайде собраны топовые вопросы, разборы и лайфхаки, которые помогут уверенно писать запросы и понимать, что от тебя хотят рекрутеры

Всё по полочкам и максимально доступно 📚

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

SQL-совет, который должен знать каждый новичок
Используйте возможности оператора WHERE.

Вместо того чтобы загружать все данные о продажах компании, сразу отфильтруйте только нужные записи:

SELECT * FROM sales
WHERE region = 'Abuja'
AND year = 2026;

Такой подход:
• ускоряет выполнение запроса;
• уменьшает объём передаваемых данных;
• снижает нагрузку на базу данных;
• особенно полезен при работе с большими таблицами.

Привычка сразу использовать WHERE там, где это возможно, сделает ваши SQL-запросы более эффективными и профессиональными.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Руководство по SQL

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

Материал дополнен практическими примерами, которые способствуют лучшему усвоению информации.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Полезная находка для работы с SQL

Тулза «Actually Explain» автоматически визуализирует PostgreSQL-запросы в виде интерактивных схем, помогая разобраться в JOIN'ах, подзапросах и связях между таблицами.

Забираем за лайк 📖

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Отличная находка бесплатная и удобная IDE для работы с SQL базами

Работает с основными СУБД: SQLite, Postgres, MySQL. Поддерживает вкладки, автодополнение, подсветку синтаксиса, историю запросов и множество других полезных функций.

Если часто шаришься по базам эта штука экономит нервы и время ⌨️

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Потрясающий инструмент для работы с базами данных SQL «RunSQL»

Онлайн-песочница без установки, где можно создавать таблицы и запросы, обмениваться результатами с командой и работать с MySQL, PostgreSQL и SQL Server

Платформа поддерживает визуальное проектирование схем данных, загрузку CSV-файлов и совместное редактирование в реальном времени

И главное он абсолютно бесплатен 👍

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Откопал полезную платформу для подготовки к собесам «DataLemur»

Коллекция практических задач по SQL, статистике, машинному обучению и Python, предназначенных для подготовки к собеседованиям в крупных компаниях в сфере аналитики данных и data science

Практикуйся прокачивай свои скиллы и уверенно проходи интервью в Google, Amazon и других гигантах 😎

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Принёс полезную шпаргалку по SQL: основы, JOIN-запросы и агрегация

Изучите базовые операции SQL: выборку данных, объединение таблиц с помощью JOIN, агрегирование с функциями COUNT, AVG, SUM и создание подзапросов. Эта шпаргалка станет вашим надежным помощником в ежедневной работе с SQL ✏️

Полная PDF версия тут ⬇️

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Читерский набор для разработчика делюсь находкой

Здесь есть буквально всё, короткие удобные шпаргалки по самым нужным темам. Git, SQL-запросы, Docker, RegEx, Bash, Python, JS, HTTP-коды, архитектура REST и многое другое.

Держи под рукой чтобы ускорить рабочий процесс ⌨️

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Принёс полезное инструмент для обучения PostgreSQL

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

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

SQL в Python: руководство по работе с данными

Знаешь SQL и хочешь понять, как делать то же самое в Pandas? Это руководство покажет как привычные SQL-запросы выглядят в мире Python 👊

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Открытый инструмент для работы с SQL-базами данных!

Визуализируйте, редактируйте и проектируйте базы данных с помощью удобного визуального интерфейса:

✓ Интерактивные диаграммы ваших таблиц
✓ Экспорт схемы базы данных в изображение PNG
✓ Поддержка MySQL, PostgreSQL, SQLite и других СУБД

http://app.chartdb.io

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Не используйте ELSE 0 вместе с COUNT и CASE

Использование ELSE 0 - очень частая ошибка у новичков, когда они комбинируют функцию COUNT с выражением CASE. Обычно это происходит из-за непонимания того, как именно COUNT работает при применении к столбцу.

Когда используется COUNT(column), функция считает все значения, которые не равны NULL, включая нули. Это значит, что если в выражении CASE указан ELSE 0, каждая строка, не попавшая под условие, превращается в значение 0. В результате такие строки тоже попадают в подсчёт.

Вот наивный пример:

sql id="g4suvd"
SELECT
Department,
COUNT(CASE
WHEN Status = 'Active' THEN EmployeeID
ELSE 0
END) AS ActiveEmployees
FROM Employees
GROUP BY Department;


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

Лучше всего вообще убрать ELSE. Когда ветка ELSE опущена, выражение CASE возвращает NULL для строк, которые не соответствуют условию. А так как COUNT() игнорирует NULL, будут посчитаны только строки, которые действительно удовлетворяют условию. Вот правильный вариант:

sql id="vxa5np"
SELECT
Department,
COUNT(CASE
WHEN Status = 'Active' THEN EmployeeID
END) AS ActiveEmployees
FROM Employees
GROUP BY Department;


В этой версии строки, не подходящие под условие, возвращают NULL, и COUNT() естественным образом исключает их из подсчёта. В итоге запрос получается чище, а подсчёт корректно отражает только те значения, которые реально соответствуют условию.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

SQL-совет, который должен знать каждый новичок

Не используйте SELECT * в реальных проектах.
Вместо этого явно указывайте только те столбцы, которые действительно нужны:

SELECT FirstName, Salary, Department
FROM Employees
WHERE Department = 'Sales';


Почему это лучше?

• Запросы выполняются быстрее — извлекаются только нужные данные.
• Снижается нагрузка на базу данных и сеть.
• Код становится понятнее и проще в поддержке.
• Изменения в структуре таблицы с меньшей вероятностью повлияют на работу приложения.

Использование SELECT * допустимо при быстром исследовании данных или в учебных примерах, но в production-коде считается плохой практикой.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Некоторые SQL-грабли, на которые до сих пор наступают даже сеньоры (мне тоже иногда приходится лезть в доки и перепроверять):

1. = NULL никогда не бывает true. Используй IS NULL / IS NOT NULL (трехзначная логика: true, false, unknown).

2. NOT IN (...) + один NULL в списке может вернуть ноль строк. Чаще безопаснее NOT EXISTS.

3. LEFT JOIN + фильтр в WHERE превращается в INNER JOIN. Фильтры по джойну клади в ON.

4. COUNT(col) пропускает NULL, а COUNT(*) нет. Из-за этого метрики потом “магически” не сходятся.

5. NULL ломает конкатенацию и сравнения. Используй COALESCE осознанно.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Наглядное объяснение операций соединения в SQL.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Бесплатные курсы по «Data Science» от Kaggle Learn

Бесплатные курсы по анализу данных, машинному обучению, Python, SQL и другим инструментам data science. Построены по принципу: «минимум теории, максимум кода»

Все задания выполняются в Jupyter ноутбуках прямо в браузере и есть система автоматической проверки 👍

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

Совет по SQL: Если вы только начинаете изучать SQL, не используйте SELECT * без необходимости.

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

• Запросы будут выполняться быстрее.
• Будет передаваться меньше лишних данных.
• Код станет понятнее и его будет проще поддерживать.
• Вы лучше поймёте структуру таблицы и то, с какими данными работаете.

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

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

SQL Tip: использование ORDER BY с несколькими столбцами

При использовании ORDER BY с несколькими столбцами база данных сначала сортирует весь результат по первому указанному столбцу (в данном примере — sales).

В результате формируются группы строк с одинаковым значением этого столбца. Например, Mira и Bob попадают в одну группу, потому что у обоих значение sales равно 12 000.

После этого применяется сортировка по второму столбцу, которая используется как критерий для разрешения совпадений.

В данном случае строки сортируются по столбцу age в порядке возрастания (ASC), поэтому Mira (30 лет) будет расположена перед Bob, который старше. Такой принцип применяется ко всем строкам, у которых совпадает значение первого столбца сортировки.

Что если совпадают значения и во втором столбце? Если одинаковыми оказываются значения и второго столбца, ситуация зависит от конкретной СУБД. В небольших наборах данных некоторые базы данных могут сохранить порядок вставки записей.

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

Вывод: если вам важен полностью предсказуемый порядок результатов, добавляйте в ORDER BY дополнительный столбец с уникальными значениями (например, id). Это гарантирует стабильную сортировку.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

День 8 из серии «20 дней изучения основ SQL для начинающих».

Многие начинающие разработчики путают операторы WHERE и HAVING.

На самом деле разница довольно проста:

• WHERE фильтрует отдельные строки до выполнения группировки (GROUP BY).
• HAVING фильтрует уже сформированные группы после применения агрегатных функций.

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

Сохраните эту шпаргалку — она обязательно пригодится вам в изучении SQL.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

День 7 из серии «20 дней изучения основ SQL для начинающих».

Сырые данные часто содержат слишком много информации, чтобы сразу увидеть закономерности.

Оператор GROUP BY помогает объединить тысячи строк в понятные сводные результаты и получить ценные инсайты.

Научитесь агрегировать данные с помощью:
• COUNT() — подсчёт количества записей
• SUM() — вычисление суммы
• AVG() — расчёт среднего значения
• Группировка по нескольким полям (GROUP BY по нескольким столбцам)

Освоив GROUP BY, вы сможете строить отчёты, анализировать данные и получать сводную информацию всего несколькими SQL-запросами.

Сохраните эту шпаргалку — GROUP BY является одним из самых важных навыков, которые нужно освоить при изучении SQL.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

День 6 из серии «20 дней изучения основ SQL для начинающих».

Сырые данные сами по себе не дают ответов на бизнес-вопросы. Это делают агрегатные функции SQL.

Освойте эти 5 базовых функций:

• COUNT() — подсчёт количества записей
• SUM() — вычисление суммы
• AVG() — расчёт среднего значения
• MIN() — поиск минимального значения
• MAX() — поиск максимального значения

Освоив их, вы научитесь превращать набор строк в полезную аналитику и получать ценные инсайты из данных.

Сохраните эту шпаргалку по SQL, чтобы всегда иметь её под рукой.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

День 5 из серии «20 дней изучения основ SQL для начинающих»

Данные становятся по-настоящему полезными, когда они правильно упорядочены.

Сортировка помогает:

• находить лидеров и лучшие результаты;
• выявлять тенденции;
• быстрее анализировать данные.

Освойте эти 6 способов сортировки в SQL, и ваши запросы сразу станут более эффективными и информативными.

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

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

День 4 из серии «20 дней изучения SQL для начинающих».

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

Изучите эти базовые конструкции:

• LIKE — поиск по шаблону
• % — подстановочный символ для любого количества символов
• _ — подстановочный символ для одного любого символа
• IN — поиск по нескольким заданным значениям
• NOT IN — исключение заданных значений

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

Сохраните эту SQL-шпаргалку она ещё не раз пригодится.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

День 3 из серии «20 дней изучения SQL для начинающих».

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

Освойте эти 6 способов фильтрации данных и начните писать SQL-запросы как настоящий аналитик данных.

Сохраните эту шпаргалку, чтобы она всегда была под рукой.

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

ДЕНЬ 2 из серии «20 дней SQL для начинающих».

Большинство новичков в SQL сразу переходят к изучению JOIN. Но любой SQL-запрос начинается с одной команды:
SELECT

Сначала освойте эти 5 основных концепций:

• SELECT * выбрать все столбцы
• Выбор конкретных столбцов
• DISTINCT получить только уникальные значения
• Псевдонимы (Aliases) переименование столбцов или таблиц
• LIMIT ограничение количества возвращаемых строк

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

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

👉 @SQLPortal

Читать полностью…

SQL Portal | Базы Данных

ДЕНЬ 1 из серии «20 дней SQL для начинающих».

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

Начните с этих 6 базовых концепций и заложите прочный фундамент для дальнейшего изучения SQL.

Сохраните эту дорожную карту, чтобы вернуться к ней позже.

👉 @SQLPortal

Читать полностью…
Subscribe to a channel