- Как аналитики используют SQL
- Как работать с SQLime
- Как извлекать записи
- Как работает пагинация
- Как присвоить псевдоним
- Как найти уникальные значения
- Выводы
В современном мире данные создаются с огромной скоростью. Мы постоянно делаем фотографии, снимаем видео, покупаем товары в интернет-магазинах, посещаем сайты, пишем посты в соцсетях. Все эти данные можно хранить на компьютерах, внешних носителях или в облачных сервисах. Но для организованного хранения больших объемов информации эти способы не подойдут.
В таких случаях лучшим вариантом будут базы данных. Они похожи на коробки — в них можно складывать информацию и хранить ее так, чтобы было легко найти.
Для работы с базами используются разные СУБД — системы управления базами данных. Это специальные программы, которые позволяют создавать, удалять, менять и читать информацию из базы.
Формат базы зависит от типа СУБД. Например, данные можно хранить в виде таблиц из строк и столбцов — таким образом устроены реляционные СУБД. Яркие примеры реляционных СУБД — это MySQL, PostgreSQL и Oracle.
Чтобы работать с реляционными СУБД, нужно освоить SQL — язык запросов к базам данных. В этом уроке мы начнем знакомиться с этим языком.
Как аналитики используют SQL
Чтобы обращаться к записям в базе данных, используется SQL — язык структурированных запросов. С его помощью можно легко и быстро получать нужные данные, добавлять новые записи, изменять или удалять существующие.
В SQL есть несколько основных типов команд:
SELECT
— выбрать данные из базы, то есть получить информацию, отфильтровать ее или отсортировать по критериямINSERT
— добавить новые записи в базу данныхUPDATE
— изменить существующие данные в базе, то есть обновить значения в определенных строках и столбцах таблицыDELETE
— удалить данные из базы
На практике аналитики данных чаще всего используют команду SELECT
. Она помогает получать нужную информацию из базы данных, чтобы затем провести анализ и принять обоснованные решения.
Язык SQL в аналитике решает множество задач:
- Фильтрация данных — можно выбрать только те данные, которые соответствуют определенным условиям. Это очень полезно, когда аналитику нужно сосредоточиться на конкретных значениях или категориях
- Сортировка данных — можно отсортировать данные по возрастанию или убыванию и упорядочить их по определенным критериям. Это заметно облегчает анализ
- Вычисление агрегатных функций — можно воспользоваться встроенными функциями и рассчитать сумму, среднее значение, минимальное и максимальное значение, а также другие статистические показатели. Это помогает аналитикам быстро оценить общую картину и определить тренды
- Объединение данных из разных таблиц — можно связывать данные из разных таблиц, чтобы получить более полную информацию для анализа. Это особенно полезно, когда данные хранятся в отдельных таблицах, но связаны между собой
- Группировка данных — можно сгруппировать данные по определенным критериям, чтобы увидеть общие закономерности и зависимости. Это упрощает анализ и помогает найти важные инсайты
На этом курсе мы научимся решать все эти задачи.
Как работать с SQLime
Для обучения аналитике на SQL мы будем пользоваться SQLime — удобным онлайн-инструментом, который не требует установки программы на компьютер. Это интерактивная среда, в которой можно писать и выполнять SQL-запросы.
Чтобы начать пользоваться SQLime, откройте сайт SQLime в браузере.
На главной странице вы увидите:
Страница состоит из двух блоков:
- Окно для ввода SQL-запросов. Здесь вы можете использовать подсказки и автодополнение кода, чтобы ускорить процесс написания запросов и уменьшить вероятность ошибок
- Окно для вывода результатов. Здесь вы увидите результаты выборки данных, обновлений, добавления или удаления записей
В SQLime можно подключиться к любой локальной или удаленной реляционной базе данных. Это можно сделать разными способами:
- С помощью файла в формате .db
- C помощью URL-ссылки
- С помощью команд
CREATE
иINSERT
Для примера возьмем уже созданную базу данных с информацией о продажах товаров в разных магазинах. Чтобы поработать с ней, достаточно перейти по ссылке.
Как извлекать записи
Выполним первый запрос:
SELECT * FROM products;
Рассмотрим его подробнее:
- Ключевое слово
SELECT
указывает, что мы хотим извлечь данные из таблицы - Символ
*
означает, что мы хотим выбрать все столбцы из таблицы - Ключевое слово
FROM
указывает, из какой таблицы извлечь данные - Название
products
обозначает таблицу, из которой мы хотим извлечь данные
Выполнив этот запрос, мы получим таблицу со всеми строками и столбцами из таблицы products
:
Здесь мы видим полную информацию о каждом продукте, включая его идентификатор, название, категорию и цену.
Аналогично предыдущему примеру, можно извлечь все записи из sales
— таблицы с продажами:
SELECT * FROM sales;
Такой результат мы получим:
Если нужны какие-то конкретные поля, можно перечислить их через запятую вместо звездочки:
SELECT
sale_id,
sale_date,
quantity
FROM sales;
Сделав такой запрос, мы получим таблицу с тремя столбцами:
Как работает пагинация
Пагинация позволяет разбить большой набор данных на меньшие части, которые можно отображать на разных страницах. В SQL для этого используются операторы LIMIT
и OFFSET
.
Допустим, мы хотим посмотреть список продаж на страницах, каждая из которых содержит по три записи. Чтобы получить продажи на первой странице, используем следующий SQL-запрос:
SELECT * FROM sales
LIMIT
3
OFFSET 0;
Результат этого запроса выглядит так:
Чтобы просмотреть продажи на второй странице, увеличим значение OFFSET
на 3:
SELECT * FROM sales
LIMIT
3
OFFSET 3;
Получим такую таблицу:
Операторы LIMIT
и OFFSET
ограничивают количество возвращаемых строк и пропускают определенное количество строк перед началом извлечения:
- Оператор
LIMIT
определяет максимальное количество строк в результате. Например,LIMIT 3
ограничивает результат до трех строк OFFSET
определяет, сколько строк следует пропустить перед извлечением. Например, запрос сOFFSET 3
пропустит первые три строки и вернет результаты, начиная с четвертой строки
Чтобы получить продажи на N-ной странице, обычно используют OFFSET
с такой формулой:
OFFSET (N — 1) * количество_записей_на_странице`
Для примера вычислим значение OFFSET
, которое покажет продажи на третьей странице:
(3 — 1) * 3 = 6
Как присвоить псевдоним
Чтобы работать с базой данных было удобнее, мы можем изменить названия на более понятные.
Для этого используется оператор AS
, который присваивает строке, столбцу или таблице более удобное название — псевдоним (alias).
Попробуем присвоить псевдонимы столбцам product_name
, category
, и price
:
SELECT
product_id,
product_name AS "Название продукта",
category AS "Категория",
price AS "Цена"
FROM products;
В выводе мы увидим таблицу с понятными названиями:
Как найти уникальные значения
Представим, нам нужно проанализировать ассортимент магазина и найти в нем уникальные категории товаров. Для таких задач используется оператор DISTINCT
. Он позволяет получить уникальные значения определенного столбца или набора столбцов.
Извлечем уникальные категории из таблицы products
.
SELECT DISTINCT category
FROM products;
В результате мы увидим три уникальные категории:
Если в таблице есть несколько товаров с одинаковыми категориями, то в результате запроса каждая категория появится только один раз.
Выводы
В этом уроке мы начали знакомиться с языком запросов SQL. Подведем краткие итоги:
- В современном мире очень много информации — такие объемы удобнее всего хранить в базах данных
- Базы данных управляются с помощью СУБД — систем управления базами данных. Они позволяют организовать хранение в различных форматах и структурах
- Реляционные СУБД работают с данными, которые хранятся в таблицах из строк и столбцов
- Язык SQL используется для обращения к данным, хранящимся в базе данных и управления ими
- С помощью оператора
SELECT
можно извлечь данные из таблицы, а с помощьюLIMIT
иOFFSET
— организовать пагинацию - Оператор
AS
позволяет присвоить псевдонимы таблицам или столбцам, что упрощает чтение SQL-запросов - Оператор
DISTINCT
извлекает уникальные значения определенного столбца или набора столбцов, что может быть полезно в аналитических задачах
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.