Что такое SQL и зачем он нужен

О чём этот урок

Добро пожаловать на курс «SQL с нуля до продвинутого уровня» от DATUM. Это первый урок, и моя главная задача — снять страх перед словами «база данных» и «SQL». К концу урока у вас на компьютере будет установлена настоящая база данных, и вы сможете её открыть и посмотреть.

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

Что такое база данных простыми словами

Представьте: вы работаете в небольшом магазине в Бишкеке. Каждый день вы записываете в Excel-файл, что продали и сколько: «1 марта — лепёшка — 25 сом», «1 марта — молоко „Шин-Лайн“ — 95 сом», и так далее.

Через год у вас будет файл на 50 тысяч строк. Через два — 200 тысяч. И в какой-то момент:

  • Excel начинает тормозить и зависает при открытии
  • Если два сотрудника одновременно открыли файл — один из них точно потеряет свои изменения
  • Вы случайно стёрли важную колонку, и откатить уже не получится
  • Найти все продажи именно в магазине «Восток-5» за апрель — превращается в квест с фильтрами

Вот тут на сцену выходит база данных (БД) — специальная программа, которая умеет хранить миллионы строк, давать к ним доступ нескольким пользователям одновременно, защищать данные от потери и быстро находить нужное.

База данных = Excel на стероидах. Только вместо мышки и фильтров — язык запросов SQL. Один запрос заменяет 10 минут кликов.

Где базы данных встречаются в реальной жизни

Где Что хранится в БД
Banking app (MBank, Optima) Все ваши транзакции, баланс, история переводов
Namba Taxi / Yandex Go Поездки, водители, тарифы, ваш рейтинг
Сеть «Народный» / «Глобус» Чеки, остатки на складе, программа лояльности
1С Бухгалтерия Все проводки, контрагенты, счета
Telegram, WhatsApp Сообщения, контакты, медиа-файлы
Сайт DATUM (на WordPress) Пользователи, курсы, прогресс обучения

Что такое SQL

SQL (читается «эс-ку-эль» или «сиквел») расшифровывается как Structured Query Language — структурированный язык запросов. Это язык, на котором вы «разговариваете» с базой данных.

Например, вы хотите спросить у базы: «дай мне список всех магазинов в Оше». На SQL это пишется так:

SELECT name, address
FROM stores
WHERE city = 'Ош';

Прочтите вслух: «Выбери имя и адрес из магазинов, где город = Ош». Это почти английская фраза. Именно поэтому SQL называют «декларативным» языком: вы описываете что хотите получить, а не как это вычислить.

Кейс из жизни: на собеседовании на позицию Junior Data Analyst в банке Бишкека вам почти наверняка дадут SQL-задачу. Знание SQL — это не «плюс к резюме», это базовый минимум. По данным hh.kg, ~75% вакансий аналитика данных в Кыргызстане требуют знания SQL.

Какие бывают СУБД

Слово СУБД означает «Система Управления Базами Данных» — это программа, которая физически хранит и обрабатывает базу. По-английски — DBMS. Самые популярные:

СУБД Где используется Особенности
SQLite Мобильные приложения, встроенные системы, обучение Самая простая, не требует установки сервера
PostgreSQL Аналитика, банки, крупный бизнес Промышленный стандарт, бесплатная, мощная
MySQL Веб-сайты (включая WordPress, на котором работает DATUM) Очень распространена, проще PostgreSQL
MS SQL Server Корпоративный сектор, .NET-проекты Платная, продукт Microsoft
Oracle Крупные корпорации, банки Платная, очень дорогая

Хорошая новость: язык SQL практически одинаковый во всех этих СУБД! Если вы освоили SQL на SQLite, вы на 90% освоили его и для PostgreSQL, и для MySQL. На курсе мы начнём с самой простой — SQLite, а с Модуля 3 перейдём на PostgreSQL — то, что реально используют в компаниях Кыргызстана.

Установка инструментов

Чтобы открыть базу narodny.db, нам нужны две вещи:

  1. DB Browser for SQLite — бесплатная программа для просмотра и редактирования SQLite-баз.
    Скачайте с официального сайта: sqlitebrowser.org
    Версии для Windows, macOS и Linux. Установка — стандартная, «Далее → Далее → Готово».
  2. Файл базы данных narodny.db — скачайте его в тут в Google Drive . Сохраните в любую удобную папку, например Documents/DATUM_SQL/.
  3. Откройте DB Browser for SQLite. В верхнем меню выберите File → Open Database и выберите файл narodny.db.

Если что-то пошло не так: на Windows иногда антивирус блокирует первое открытие. Просто разрешите программе работать. На macOS при первом запуске может появиться предупреждение «программа от неустановленного разработчика» — нажмите правой кнопкой на иконке → «Открыть». Если возникнут другие проблемы — пишите в чат поддержки курса.

Знакомимся с базой «Народный»

На протяжении первых двух модулей мы будем работать с учебной базой narodny.db — это вымышленная (но очень похожая на реальную!) сеть супермаркетов «Народный» с магазинами в Бишкеке, Оше, Караколе и других городах.

База содержит 6 связанных таблиц:

Таблица Что хранит Примерное количество записей
stores Магазины: название, город, адрес 12
categories Категории товаров 10
products Товары: название, категория, цена ~80
customers Клиенты программы лояльности 200
sales Чеки (продажи) ~3 000
sale_items Позиции в чеках ~9 700

Обзор интерфейса DB Browser

После открытия базы вы увидите 4 основные вкладки:

Вкладка Что делает
Database Structure Показывает все таблицы и их структуру (колонки, типы)
Browse Data Просмотр данных в виде таблицы (как Excel)
Edit Pragmas Настройки базы — пока не нужно
Execute SQL Главная вкладка для нас — здесь мы будем писать запросы

📷 Скриншот интерфейса DB Browser for SQLite с открытой базой narodny.db

Ваш первый SQL-запрос

Раз мы уже здесь — давайте запустим один-единственный запрос, чтобы убедиться, что всё работает. Перейдите на вкладку Execute SQL, скопируйте запрос ниже и нажмите кнопку ▶ (или F5):

SELECT * FROM stores;

Внизу появится таблица из 12 строк — все магазины сети «Народный». Поздравляю — вы только что выполнили свой первый SQL-запрос! 🎉

Звёздочка * означает «все колонки». В следующем уроке мы научимся выбирать только те колонки, которые нам нужны, использовать LIMIT и DISTINCT.

Резюме урока

  • 📦 База данных — это специальная программа для хранения структурированных данных. Лучше Excel при больших объёмах и нескольких пользователях.
  • 💬 SQL — язык запросов к базе данных. Похож на английский, читается естественно.
  • 🛠 СУБД бывают разные: SQLite (учим), PostgreSQL (промышленный стандарт), MySQL, и т.д.
  • 📂 У нас на компьютере установлен DB Browser for SQLite и открыта база narodny.db — сеть супермаркетов «Народный».
  • ✅ Вы выполнили первый запрос: SELECT * FROM stores;

Что дальше

В Уроке 1.2 мы начнём писать настоящие SQL-запросы: научимся выбирать конкретные колонки, ограничивать вывод через LIMIT и получать уникальные значения через DISTINCT. К концу урока вы сможете отвечать на вопросы вроде «в скольких уникальных городах работает сеть „Народный“?»

А сейчас — переходите к практическим заданиям и квизу этого урока. Это закрепит материал и проверит, что всё установилось правильно.

🚀 Готовы попробовать? Переходите к практическим заданиям ниже.

Содержание темы