📌 Запросы под контролем: Как избежать ошибок при работе с SQL
Продолжаем разбирать SQL-запросы, а сегодня — рассмотрим основные ошибки и советы по их устранению.
1. Неправильное использование JOIN
Проблема: Ошибки в соединениях JOIN могут привести к дублированию данных или к отсутствию нужных записей.
Пример "до":
Если в
Пример "после":
Используя
2. Игнорирование условий фильтрации
Проблема: Отсутствие условий фильтрации может привести к выборке избыточного объема данных.
Пример "до":
Этот запрос возвращает все записи из таблицы
Пример "после":
Теперь мы ограничиваем выборку только записями за 2024 год, что делает данные более управляемыми.
3. Неправильное использование агрегатных функций
Проблема: Неправильное использование группировки может привести к неожиданным результатам.
Пример "до":
Этот запрос вернет общее количество сотрудников без группировки по отделам.
Пример "после":
Теперь мы получаем количество сотрудников по каждому отделу, что дает более точную информацию.
4. Проблемы с производительностью из-за подзапросов
Проблема: Сложные подзапросы могут значительно замедлить выполнение запросов.
Пример "до":
Этот запрос может быть медленным из-за подзапроса.
Пример "после":
Используя
5. Пренебрежение обработкой NULL
Проблема: Необработанные значения NULL могут привести к неправильным результатам, поскольку SQL не учитывает строки с NULL при выполнении операций сравнения.
Пример "до":
Если в таблице
Пример "после":
Используя функцию
Сохраняйте себе, поделитесь с коллегами и поддержите нас 🔥
Продолжаем разбирать SQL-запросы, а сегодня — рассмотрим основные ошибки и советы по их устранению.
1. Неправильное использование JOIN
Проблема: Ошибки в соединениях JOIN могут привести к дублированию данных или к отсутствию нужных записей.
Пример "до":
SELECT a.id, b.value
FROM table_a a
INNER JOIN table_b b ON a.id = b.a_id;
Если в
table_a есть записи без соответствующих значений в table_b, они не будут отображены.Пример "после":
SELECT a.id, b.value
FROM table_a a
LEFT JOIN table_b b ON a.id = b.a_id;
Используя
LEFT JOIN, мы получаем все записи из table_a, даже если в table_b нет соответствующих значений.2. Игнорирование условий фильтрации
Проблема: Отсутствие условий фильтрации может привести к выборке избыточного объема данных.
Пример "до":
SELECT * FROM sales;
Этот запрос возвращает все записи из таблицы
sales, что может быть очень большим объемом данных.Пример "после":
SELECT * FROM sales WHERE sale_date BETWEEN '2024-01-01' AND '2024-12-31';
Теперь мы ограничиваем выборку только записями за 2024 год, что делает данные более управляемыми.
3. Неправильное использование агрегатных функций
Проблема: Неправильное использование группировки может привести к неожиданным результатам.
Пример "до":
SELECT department_id, COUNT(*)
FROM employees;
Этот запрос вернет общее количество сотрудников без группировки по отделам.
Пример "после":
SELECT department_id, COUNT(*)
FROM employees
GROUP BY department_id;
Теперь мы получаем количество сотрудников по каждому отделу, что дает более точную информацию.
4. Проблемы с производительностью из-за подзапросов
Проблема: Сложные подзапросы могут значительно замедлить выполнение запросов.
Пример "до":
SELECT e.name
FROM employees e
WHERE e.department_id IN (SELECT d.id FROM departments d WHERE d.location = 'New York');
Этот запрос может быть медленным из-за подзапроса.
Пример "после":
SELECT e.name
FROM employees e
JOIN departments d ON e.department_id = d.id
WHERE d.location = 'New York';
Используя
JOIN, мы улучшаем производительность запроса.5. Пренебрежение обработкой NULL
Проблема: Необработанные значения NULL могут привести к неправильным результатам, поскольку SQL не учитывает строки с NULL при выполнении операций сравнения.
Пример "до":
SELECT name FROM Clients WHERE city = 'Москва';
Если в таблице
Clients есть записи с NULL в поле city, они не будут отображены в результате, даже если это важные данные.Пример "после":
SELECT name, COALESCE(city, 'Не указано') AS city FROM Clients;
Используя функцию
COALESCE, мы заменяем значения NULL на 'Не указано', что позволяет отобразить все записи и избежать потери информации.Сохраняйте себе, поделитесь с коллегами и поддержите нас 🔥
🔥24❤11👍9🤩1
This media is not supported in your browser
VIEW IN TELEGRAM
👨💻 Бесплатный курс «Основы Python»
Друзья, если вы обучаетесь и планируете стать аналитиками, задумайтесь: зачем вы изучаете Python? Этот язык программирования крайне важен для аналитиков, но часто не объясняют, в каких задачах он будет полезен.
Чтобы помочь вам разобраться, мы предлагаем наш бесплатный курс «Основы Python». Даже если у вас нет опыта, после его прохождения вы сможете решать реальные бизнес-задачи, такие как автоматизация обработки кассовых чеков или контроль просроченных платежей.
Почему стоит пройти курс?
🟠 Мы начинаем с основ и постепенно переходим к сложным темам, предоставляя прочную базу знаний.
🟠 Вы будете работать с реальными кейсами и получите поддержку в обучении через наш чат.
🟠 Курс уже прошли более 1500 человек, так что вы будете учиться в отличной компании! 🧡
❗️ Бонус: зарегистрированные студенты платных и бесплатных курсов могут пользоваться нашей реферальной программой и другими плюшками ;)
➡️ Записаться на бесплатный курс
Друзья, если вы обучаетесь и планируете стать аналитиками, задумайтесь: зачем вы изучаете Python? Этот язык программирования крайне важен для аналитиков, но часто не объясняют, в каких задачах он будет полезен.
Чтобы помочь вам разобраться, мы предлагаем наш бесплатный курс «Основы Python». Даже если у вас нет опыта, после его прохождения вы сможете решать реальные бизнес-задачи, такие как автоматизация обработки кассовых чеков или контроль просроченных платежей.
Почему стоит пройти курс?
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤6👍2😁1
📌 Оптимизация SQL-запросов: Как улучшить производительность запросов с помощью индексов и правильной структуры
В мире анализа данных производительность запросов имеет критическое значение. Оптимизация SQL-запросов может существенно сократить время выполнения и снизить нагрузку на базу данных. В этом посте мы рассмотрим, как использовать индексы и правильную структуру таблиц для достижения максимальной эффективности.
I. Зачем нужны индексы?
Индексы — это специальные структуры данных, которые помогают ускорить поиск и выборку данных в таблицах. Они работают как указатели, позволяя системе управления базами данных (СУБД) быстро находить нужные строки без необходимости сканировать всю таблицу. Это особенно важно при работе с большими объемами данных.
Пример использования индекса
Пример "до":
Без индекса СУБД будет выполнять полное сканирование таблицы, что может занять много времени.
Пример "после":
С индексом запрос выполняется значительно быстрее, так как СУБД использует индекс для быстрого поиска нужных строк.
II. Разновидности индексов
1. Первичные индексы: Создаются автоматически для столбцов с первичным ключом.
Индекс на
2. Уникальные индексы: Предотвращают дублирование значений.
Это гарантирует уникальность адресов электронной почты в таблице пользователей.
3. Составные индексы: Создаются для нескольких столбцов.
Этот индекс ускоряет запросы, фильтрующие данные по клиенту и дате одновременно.
III. Как избежать чрезмерного количества индексов
Хотя индексы значительно улучшают производительность, их чрезмерное количество может замедлить операции вставки и обновления. Вот несколько рекомендаций:
- Анализируйте использование запросов: Создавайте индексы только для тех столбцов, которые часто используются в условиях фильтрации.
- Проверяйте использование индексов: Используйте команду
- Удаляйте неиспользуемые индексы: Это поможет освободить место и улучшить производительность.
IV. Примеры оптимизации запросов
1. Ускорение фильтрации с WHERE
Пример "до":
Запрос без индекса может занять много времени.
Пример "после":
Индекс на
2. Оптимизация сортировки с ORDER BY
Пример "до":
Запрос может быть медленным без индекса.
Пример "после":
С индексом сортировка выполняется быстрее.
3. Поиск по нескольким колонкам
Пример "до":
Запрос может выполняться медленно без составного индекса.
Пример "после":
Составной индекс значительно ускоряет выполнение запроса.
Используя индексы и правильную структуру таблиц, вы можете значительно улучшить производительность своих запросов. Не забывайте регулярно анализировать использование индексов и корректировать их в зависимости от изменяющихся требований вашей базы данных.
Нравятся наши посты? Сохраняйте себе, пересылайте коллегам и просто поддержите нас лайком!👍
В мире анализа данных производительность запросов имеет критическое значение. Оптимизация SQL-запросов может существенно сократить время выполнения и снизить нагрузку на базу данных. В этом посте мы рассмотрим, как использовать индексы и правильную структуру таблиц для достижения максимальной эффективности.
I. Зачем нужны индексы?
Индексы — это специальные структуры данных, которые помогают ускорить поиск и выборку данных в таблицах. Они работают как указатели, позволяя системе управления базами данных (СУБД) быстро находить нужные строки без необходимости сканировать всю таблицу. Это особенно важно при работе с большими объемами данных.
Пример использования индекса
Пример "до":
SELECT * FROM employees WHERE department = 'HR';
Без индекса СУБД будет выполнять полное сканирование таблицы, что может занять много времени.
Пример "после":
CREATE INDEX idx_department ON employees(department);
SELECT * FROM employees WHERE department = 'HR';
С индексом запрос выполняется значительно быстрее, так как СУБД использует индекс для быстрого поиска нужных строк.
II. Разновидности индексов
1. Первичные индексы: Создаются автоматически для столбцов с первичным ключом.
CREATE TABLE orders (
order_id SERIAL PRIMARY KEY,
customer_id INT,
order_date DATE
);
Индекс на
order_id обеспечивает быструю выборку по этому полю.2. Уникальные индексы: Предотвращают дублирование значений.
CREATE UNIQUE INDEX idx_email ON users(email);
Это гарантирует уникальность адресов электронной почты в таблице пользователей.
3. Составные индексы: Создаются для нескольких столбцов.
CREATE INDEX idx_orders_customer_date ON orders(customer_id, order_date);
Этот индекс ускоряет запросы, фильтрующие данные по клиенту и дате одновременно.
III. Как избежать чрезмерного количества индексов
Хотя индексы значительно улучшают производительность, их чрезмерное количество может замедлить операции вставки и обновления. Вот несколько рекомендаций:
- Анализируйте использование запросов: Создавайте индексы только для тех столбцов, которые часто используются в условиях фильтрации.
- Проверяйте использование индексов: Используйте команду
EXPLAIN для анализа выполнения запросов.- Удаляйте неиспользуемые индексы: Это поможет освободить место и улучшить производительность.
IV. Примеры оптимизации запросов
1. Ускорение фильтрации с WHERE
Пример "до":
SELECT * FROM products WHERE price > 1000;
Запрос без индекса может занять много времени.
Пример "после":
CREATE INDEX idx_price ON products(price);
SELECT * FROM products WHERE price > 1000;
Индекс на
price ускоряет выполнение запроса.2. Оптимизация сортировки с ORDER BY
Пример "до":
SELECT name, salary FROM employees ORDER BY salary DESC;
Запрос может быть медленным без индекса.
Пример "после":
CREATE INDEX idx_salary ON employees(salary);
SELECT name, salary FROM employees ORDER BY salary DESC;
С индексом сортировка выполняется быстрее.
3. Поиск по нескольким колонкам
Пример "до":
SELECT * FROM orders WHERE customer_id = 42 AND order_date BETWEEN '2024-01-01' AND '2024-12-31';
Запрос может выполняться медленно без составного индекса.
Пример "после":
CREATE INDEX idx_customer_date ON orders(customer_id, order_date);
SELECT * FROM orders WHERE customer_id = 42 AND order_date BETWEEN '2024-01-01' AND '2024-12-31';
Составной индекс значительно ускоряет выполнение запроса.
Используя индексы и правильную структуру таблиц, вы можете значительно улучшить производительность своих запросов. Не забывайте регулярно анализировать использование индексов и корректировать их в зависимости от изменяющихся требований вашей базы данных.
Нравятся наши посты? Сохраняйте себе, пересылайте коллегам и просто поддержите нас лайком!👍
👍50🔥20❤6🤩4👏1🎉1
Simulative
Как Docker упрощает жизнь аналитиков и инженеров данных Когда вы работаете с данными, например, анализируете их или строите модели машинного обучения, Docker позволяет вам сосредоточиться на самой работе, не отвлекаясь на настройку окружения. Это как иметь…
Присоединяйтесь сегодня в 19:00 по МСК к открытому вебинару «Как Docker упрощает жизнь аналитиков и инженеров данных».
Спикер — Евгений Кахновский, Full-stack Software Engineer в Devscribed и преподаватель нашего курса-симулятора «Инженер данных».
Что будем делать:
🟠 Разберём основы Docker и как контейнеры упрощают работу;
🟠 Выполним анализ данных, запустив Python прямо внутри контейнера;
🟠 Автоматизируем окружение с помощью Docker Compose (Python + PostgreSQL);
🟠 Настроим удобный доступ к результатам анализа;
🟠 Организуем ускоренную обработку больших данных.
➡️ Зарегистрироваться
Спикер — Евгений Кахновский, Full-stack Software Engineer в Devscribed и преподаватель нашего курса-симулятора «Инженер данных».
Что будем делать:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤4👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Вебинар по дата-инженерии прошел «феерично» (с)
Вчера провели вебинар с Евгением Кахновским — разработчиком и, по совместительству, преподавателем нашего курса-симулятора «Инженер данных». Евгений рассказал о том, как Docker упрощает жизнь аналитиков и инженеров данных. И получилось классно — только взгляните на отзывы.
Хотим поблагодарить всех, кто вчера присутствовал на вебинаре — ваше участие и поддержка очень важны для нас!
Хотя вебинар по Docker продлился 2,5 часа (рекорд!), даже за это время невозможно было охватить все фишки и особенности этой платформы. Для этого у нас есть целый модуль в программе курса-симулятора «Инженер данных».
Но не только Docker делает нашу программу уникальной — она включает все необходимые навыки и инструменты для инженера данных:
🟠 Базы данных: PostgreSQL, DBeaver, Clickhouse;
🟠 Программирование: Python, Pandas, Numpy, Matplotlib, Seaborn, Plotly, gspread, VS Code, Google Colab, Jupyter Notebook;
🟠 Визуализация данных (BI): Metabase;
🟠 Автоматизация и деплой: Linux, Docker, bash, Airflow.
Самое главное: обучение построено на практике по настоящим бизнес-задачам. Это позволяет создать портфолио на основе реальных проектов — оно точно выделит вас на рынке труда.
Если вы давно хотели стать дата-инженером или прокачать свои навыки на следующий уровень — завтра стартует новый поток нашего курса. Ждем вас среди наших студентов!
➡️ Запишитесь прямо сейчас
Вчера провели вебинар с Евгением Кахновским — разработчиком и, по совместительству, преподавателем нашего курса-симулятора «Инженер данных». Евгений рассказал о том, как Docker упрощает жизнь аналитиков и инженеров данных. И получилось классно — только взгляните на отзывы.
Хотим поблагодарить всех, кто вчера присутствовал на вебинаре — ваше участие и поддержка очень важны для нас!
Хотя вебинар по Docker продлился 2,5 часа (рекорд!), даже за это время невозможно было охватить все фишки и особенности этой платформы. Для этого у нас есть целый модуль в программе курса-симулятора «Инженер данных».
Но не только Docker делает нашу программу уникальной — она включает все необходимые навыки и инструменты для инженера данных:
Самое главное: обучение построено на практике по настоящим бизнес-задачам. Это позволяет создать портфолио на основе реальных проектов — оно точно выделит вас на рынке труда.
Если вы давно хотели стать дата-инженером или прокачать свои навыки на следующий уровень — завтра стартует новый поток нашего курса. Ждем вас среди наших студентов!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤8👍5
Гайд по JOIN в SQL — виды, описание и примеры
В реальной практике часть данных может находиться в одной таблице, часть – в другой, еще одна часть в третьей. Для того, чтобы объединить эти данные, в Excel можно использовать ВПР, а в SQL для этого используется оператор JOIN.
JOIN (в переводе с английского «присоединять») — это оператор, позволяющий объединить несколько таблиц, является одним из самых частых операторов SQL, который используют аналитики и разработчики.
Чем полезен материал:
🟠 Поможет глубже понять JOIN — ключевой инструмент для объединения данных;
🟠 Расскажет о разных типах JOIN для разных задач с примерами запросов;
🟠 Содержит практические рекомендации по оптимизации JOIN.
Сохраняйте материал себе, чтобы обратиться к нему в любом момент. А случаи бывают разные 🙃
➡️ Получить материал
#полезность
В реальной практике часть данных может находиться в одной таблице, часть – в другой, еще одна часть в третьей. Для того, чтобы объединить эти данные, в Excel можно использовать ВПР, а в SQL для этого используется оператор JOIN.
JOIN (в переводе с английского «присоединять») — это оператор, позволяющий объединить несколько таблиц, является одним из самых частых операторов SQL, который используют аналитики и разработчики.
Чем полезен материал:
Сохраняйте материал себе, чтобы обратиться к нему в любом момент. А случаи бывают разные 🙃
#полезность
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤5👍3
Вебинар: 10 полезных приемов SQL от тимлида аналитиков
Основная задача аналитиков данных в бизнесе — поиск и выявление закономерностей в больших объемах информации. И побыстрее, и покачественнее. Знание лайфхаков поможет сделать работу и эффективно, и быстро. Меньше работы, конечно, от этого не станет, но облегчит и поможет принимать обоснованные решения.
12 февраля в 19:00 по МСК Павел Беляев, тимлид аналитиков в сервисе eLama, проведет вебинар (даже мастер-класс), где покажет 10 приёмов и приёмчиков в работе с данными на SQL, которые использует его команда в реальной практике.
Что будет на вебинаре:
🟠 Проведем проверку на повторяющиеся комбинации в таблице с данными;
🟠 Найдём последний элемент в исторических данных;
🟠 Проведём сравнение разных версий таблиц;
🟠 Заполним пропущенные даты во входящих данных и другое.
➡️ Зарегистрироваться
#вебинар
Основная задача аналитиков данных в бизнесе — поиск и выявление закономерностей в больших объемах информации. И побыстрее, и покачественнее. Знание лайфхаков поможет сделать работу и эффективно, и быстро. Меньше работы, конечно, от этого не станет, но облегчит и поможет принимать обоснованные решения.
12 февраля в 19:00 по МСК Павел Беляев, тимлид аналитиков в сервисе eLama, проведет вебинар (даже мастер-класс), где покажет 10 приёмов и приёмчиков в работе с данными на SQL, которые использует его команда в реальной практике.
Что будет на вебинаре:
#вебинар
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥22👍8❤5
📎 CTE — важный помощник аналитика
CTE (Common Table Expression или Обобщенные Табличные Выражения) — это временный результат запроса SQL, или, проще говоря, это временная таблица, которая удаляется после выполнения запроса.
Подготовили для вас статью об особенностях и функциях СТЕ, как всегда, с примерами.
➡️ Прочитать статью
Рассчитываем на ваши 🔥 и комментарии.
CTE (Common Table Expression или Обобщенные Табличные Выражения) — это временный результат запроса SQL, или, проще говоря, это временная таблица, которая удаляется после выполнения запроса.
Подготовили для вас статью об особенностях и функциях СТЕ, как всегда, с примерами.
Рассчитываем на ваши 🔥 и комментарии.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25❤6👍4
Оконные функции в SQL: Инструмент для глубокого анализа данных
У нас уже была статья про оконные функции в SQL, где подробно описано что это такое, а сегодня поделимся дополнительными функциями и примерами.
Вкратце
Оконные функции выполняют вычисления для группы строк, называемой "окном", и возвращают результат для каждой строки в этом окне. В отличие от агрегатных функций, которые группируют строки в одну итоговую запись, оконные функции сохраняют все строки, добавляя к ним результаты вычислений.
Как создавать оконные функции?
Создание оконных функций в SQL осуществляется с использованием ключевого слова
Основные компоненты:
1. Функция агрегации: Это может быть любая агрегатная функция, такая как
2. PARTITION BY: Этот оператор разделяет набор данных на группы (партиции) на основе указанного столбца. Каждая партиция будет обрабатываться отдельно.
3. ORDER BY: Этот оператор определяет порядок строк внутри каждой партиции, что может влиять на результаты вычислений.
Примеры использования
1. Скользящая сумма продаж:
Этот запрос рассчитывает сумму продаж за последние 7 дней для каждой даты.
2. Ранжирование сотрудников по зарплате:
Здесь каждому сотруднику присваивается ранг в зависимости от его зарплаты.
3. Кумулятивная сумма
Кумулятивная сумма позволяет отслеживать общую сумму значений по мере их накопления. Это полезно для анализа трендов.
В этом запросе для каждой даты рассчитывается кумулятивная сумма продаж, что позволяет увидеть, как меняется общая сумма со временем.
4. Вычисление процента от общего значения
С помощью оконных функций можно легко рассчитать процент от общего значения для каждой строки.
Здесь мы вычисляем процент продаж каждого продукта от общего объема продаж. Это позволяет быстро оценить вклад каждого продукта в общую выручку.
5. Сравнение текущего значения с предыдущим
Функции
В этом запросе мы получаем продажи за предыдущий день и разницу между текущими и предыдущими продажами. Это помогает быстро выявить изменения в продажах.
Сохраняйте себе, пересылайте коллегам и просто поддержите нас 🔥
У нас уже была статья про оконные функции в SQL, где подробно описано что это такое, а сегодня поделимся дополнительными функциями и примерами.
Вкратце
Оконные функции выполняют вычисления для группы строк, называемой "окном", и возвращают результат для каждой строки в этом окне. В отличие от агрегатных функций, которые группируют строки в одну итоговую запись, оконные функции сохраняют все строки, добавляя к ним результаты вычислений.
Как создавать оконные функции?
Создание оконных функций в SQL осуществляется с использованием ключевого слова
OVER(), которое определяет рамку окна. Синтаксис оконной функции выглядит следующим образом:функция_агрегирования() OVER (PARTITION BY столбец ORDER BY столбец)
Основные компоненты:
1. Функция агрегации: Это может быть любая агрегатная функция, такая как
SUM(), AVG(), COUNT(), RANK() и другие.2. PARTITION BY: Этот оператор разделяет набор данных на группы (партиции) на основе указанного столбца. Каждая партиция будет обрабатываться отдельно.
3. ORDER BY: Этот оператор определяет порядок строк внутри каждой партиции, что может влиять на результаты вычислений.
Примеры использования
1. Скользящая сумма продаж:
SELECT sale_date,
sales_amount,
SUM(sales_amount) OVER (ORDER BY sale_date ROWS BETWEEN 6 PRECEDING AND CURRENT ROW) AS rolling_sum
FROM sales;
Этот запрос рассчитывает сумму продаж за последние 7 дней для каждой даты.
2. Ранжирование сотрудников по зарплате:
SELECT employee_id,
salary,
RANK() OVER (ORDER BY salary DESC) AS salary_rank
FROM employees;
Здесь каждому сотруднику присваивается ранг в зависимости от его зарплаты.
3. Кумулятивная сумма
Кумулятивная сумма позволяет отслеживать общую сумму значений по мере их накопления. Это полезно для анализа трендов.
SELECT sale_date,
sales_amount,
SUM(sales_amount) OVER (ORDER BY sale_date) AS cumulative_sales
FROM sales;
В этом запросе для каждой даты рассчитывается кумулятивная сумма продаж, что позволяет увидеть, как меняется общая сумма со временем.
4. Вычисление процента от общего значения
С помощью оконных функций можно легко рассчитать процент от общего значения для каждой строки.
SELECT product_id,
sales_amount,
SUM(sales_amount) OVER () AS total_sales,
(sales_amount * 100.0 / SUM(sales_amount) OVER ()) AS sales_percentage
FROM sales;
Здесь мы вычисляем процент продаж каждого продукта от общего объема продаж. Это позволяет быстро оценить вклад каждого продукта в общую выручку.
5. Сравнение текущего значения с предыдущим
Функции
LAG() и LEAD() позволяют сравнивать текущее значение с предыдущими или следующими значениями в наборе данных.SELECT sale_date,
sales_amount,
LAG(sales_amount, 1) OVER (ORDER BY sale_date) AS previous_day_sales,
sales_amount - LAG(sales_amount, 1) OVER (ORDER BY sale_date) AS sales_difference
FROM sales;
В этом запросе мы получаем продажи за предыдущий день и разницу между текущими и предыдущими продажами. Это помогает быстро выявить изменения в продажах.
Сохраняйте себе, пересылайте коллегам и просто поддержите нас 🔥
🔥31👍11❤8
This media is not supported in your browser
VIEW IN TELEGRAM
Чем занимаются аналитики на работе? 3 реальные истории
Мы пообщались с некоторыми нашими студентами, которые уже трудоустроились в разных компаниях. Они поделились своими историями о том, что входит в их повседневные обязанности.
Например, Даниил смог начать карьеру в аналитике после прохождения нескольких модулей (продуктовые метрики, SQL и Metabase). Это впечатляет!
👉 Читайте все истории здесь.
Мы рассмотрели всего три истории из сотен подобных. Очевидно одно — даже с небольшим набором знаний вы можете начать практиковаться в новой профессии.
Как думаете, смогли бы так же?
➡️ Если вы интересуетесь аналитикой и хотите попробовать свои силы на практике — есть возможность освоить базовые понятия с бесплатным доступом к первым урокам нашего курса-симулятора «Аналитик данных».
Так вы решите первую бизнес-задачу и поймете лучше эту профессию.
Мы пообщались с некоторыми нашими студентами, которые уже трудоустроились в разных компаниях. Они поделились своими историями о том, что входит в их повседневные обязанности.
Например, Даниил смог начать карьеру в аналитике после прохождения нескольких модулей (продуктовые метрики, SQL и Metabase). Это впечатляет!
👉 Читайте все истории здесь.
Мы рассмотрели всего три истории из сотен подобных. Очевидно одно — даже с небольшим набором знаний вы можете начать практиковаться в новой профессии.
Как думаете, смогли бы так же?
Так вы решите первую бизнес-задачу и поймете лучше эту профессию.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤7🔥6
Media is too big
VIEW IN TELEGRAM
А надо ли мне учиться аналитике, если рынок перегрет и джунов слишком много?
Давайте разберемся.
Чтобы вы могли стать таким специалистом, мы разработали менторскую программу «Аналитик данных». В ней вы получите:
P.S. Вообще, есть еще пункты по вопросу рынка труда, но мы пожалуй вынесем это в отдельное обсуждение. Stay tuned!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7😁5❤4👍4
Simulative
Вебинар: 10 полезных приемов SQL от тимлида аналитиков Основная задача аналитиков данных в бизнесе — поиск и выявление закономерностей в больших объемах информации. И побыстрее, и покачественнее. Знание лайфхаков поможет сделать работу и эффективно, и быстро.…
Присоединяйтесь в 19:00 по МСК к открытому вебинару «10 полезных приемов SQL от тимлида аналитиков». Спикер — Павел Беляев, тимлид аналитиков в сервисе eLama.
Что будем делать:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🔥4👍3
Полминутки юмора 🙃
А если серьезно, мы гордимся атмосферой открытости и вовлечения на наших вебинарах. Вы можете задать любой животрепещущий вопрос спикеру, который в аналитике уже не первый год, да и просто пообщаться в уютненьком чатике с коллегами.
Всех ждем в 19:00 по МСК!
А если серьезно, мы гордимся атмосферой открытости и вовлечения на наших вебинарах. Вы можете задать любой животрепещущий вопрос спикеру, который в аналитике уже не первый год, да и просто пообщаться в уютненьком чатике с коллегами.
Всех ждем в 19:00 по МСК!
❤16😁4👍3🔥3👏1🤩1
Мы познакомились друг с другом и нашим очень классным спикером — Павлом Беляевым. Сейчас уже вместе с Павлом приступаем к разбору первого приёма в работе с данными, начинаем с проверок на дубли, а там посмотрим.
Прямой эфир — отличная возможность задать свои вопросы и получить на них ответы от опытного специалиста.
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Simulative
Получите все материалы и доступы 🚀
Нажимая на кнопку "Старт", вы соглашаетесь на обработку персональных данных
Нажимая на кнопку "Старт", вы соглашаетесь на обработку персональных данных
❤5🔥4👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 В какой последовательности изучать аналитику данных?
Если вы только в начале пути к карьере аналитика, то наверняка сталкивались с невероятным обилием информации и такими мыслями:
🟠 А нужно ли учить инструмент/язык Х или лучше выбрать другой?
🟠 А в каком порядке изучать темы?
🟠 А что нужно освоить, чтобы максимально быстро стартануть карьеру, а не 3 года потратить на прохождение разных курсов?
Мы с командой подготовили (скорее, обновили) для вас бесплатный полный роадмап по карьере аналитика. Рекомендуем вам его скачать, сохранить и периодически заглядывать, чтобы не сбиваться с пути и максимально быстро стартануть карьеру.
❗️ Роадмап поможет вам выстроить четкую последовательность изучения тем, выделить ключевые темы (мы разложили все по приоритетам) и не тратить время на лишнее (специфические темы для разных специальностей выделены отдельно).
Если вы еще не скачали себе наш роадмап — обязательно сделайте это: он позволит избавиться от путаницы и сформировать четкий план действий, без тревоги что-либо упустить ✨
➡️ Получить материал
#полезность
Если вы только в начале пути к карьере аналитика, то наверняка сталкивались с невероятным обилием информации и такими мыслями:
Мы с командой подготовили (скорее, обновили) для вас бесплатный полный роадмап по карьере аналитика. Рекомендуем вам его скачать, сохранить и периодически заглядывать, чтобы не сбиваться с пути и максимально быстро стартануть карьеру.
Если вы еще не скачали себе наш роадмап — обязательно сделайте это: он позволит избавиться от путаницы и сформировать четкий план действий, без тревоги что-либо упустить ✨
#полезность
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15🔥9👍6
This media is not supported in your browser
VIEW IN TELEGRAM
📌 Какие навыки нужны новичку, чтобы взяли на работу?
Видим ваши комментарии в чатах и вебинарах с насущным вопросом:
Приводим короткий список:
🟠 Продуктовые метрики: нужно глубоко разбираться в том, как «переводить» продукт на язык цифр и метрик.
🟠 SQL и базы данных: освойте SQL, это чаще всего спрашивают на собеседованиях и используют в работе.
🟠 Python: основы программирования для анализа данных.
🟠 Коммуникация: многие видят аналитиков суровыми интровертами, но каким бы интровертом вы не были – данные приходят от людей и нужны тоже людям. Нужно уметь понимать, что хочет получить заказчик и доносить свои мысли коллегам.
На нашем курсе-симуляторе «Аналитик данных» вы научитесь всем этим навыкам через практические задания на реальных кейсах. Вы решите более 300 бизнес-задач и соберете портфолио, которое поможет вам найти работу или продвинуться по карьерной лестнице. Уже через несколько месяцев вы с уверенностью сможете откликаться на вакансии!
➡️ Курс стартует уже сегодня, осталось 2 места — успевайте заскочить!
❗️ Небольшой бонус.
Что еще сейчас часто ищут работодатели – это мультикомпетентный специалист. Такой, что и пайплайны соберет, и анализ проведет, и визуализирует красиво.
Учитывая такое положение дел, а также пожелания нашей аудитории, присмотритесь к специальному предложению с выгодой 21% — «Фулстек-аналитик», объединяющее наши курсы в три трека.
Оставляйте заявку, уточняйте условия и выбирайте свое лучшее будущее в профессии!
Видим ваши комментарии в чатах и вебинарах с насущным вопросом:
За какие же навыки хвататься, чтобы стартовать карьеру в аналитике? Что спрашивают на собеседованиях?
Приводим короткий список:
На нашем курсе-симуляторе «Аналитик данных» вы научитесь всем этим навыкам через практические задания на реальных кейсах. Вы решите более 300 бизнес-задач и соберете портфолио, которое поможет вам найти работу или продвинуться по карьерной лестнице. Уже через несколько месяцев вы с уверенностью сможете откликаться на вакансии!
Что еще сейчас часто ищут работодатели – это мультикомпетентный специалист. Такой, что и пайплайны соберет, и анализ проведет, и визуализирует красиво.
Учитывая такое положение дел, а также пожелания нашей аудитории, присмотритесь к специальному предложению с выгодой 21% — «Фулстек-аналитик», объединяющее наши курсы в три трека.
Оставляйте заявку, уточняйте условия и выбирайте свое лучшее будущее в профессии!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤4👍4
This media is not supported in your browser
VIEW IN TELEGRAM
СММщик: не хочет делать мимимишный контент к празднику.
Андрон: старается, рисует сердечко на питоне, чтоб СММщику понравилось.
Как вам?
❤️ — Андрон молодец!
🔥 — Сердечко крутое!
👍 — Вы крутые!
🟠 Ссылка на код
Андрон: старается, рисует сердечко на питоне, чтоб СММщику понравилось.
Как вам?
❤️ — Андрон молодец!
🔥 — Сердечко крутое!
👍 — Вы крутые!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤93🔥26👍18😁2😱1
Вебинар: Строим модель кредитного скоринга на Kaggle
19 февраля в 19:00 по МСК проведем вебинар, где вместе с Савелием Батуриным построим модель кредитного скоринга. Савелий — Senior ML-Engineer в Postgres Professional, а также преподаватель нашего курса-симулятора «Инженер машинного обучения». Возможно, вы уже даже посещали предыдущий вебинар, где мы строили рекомендательную систему фильмов.
Что будем делать в этот раз:
🟠 Изучим классификацию и кредитный скоринг: научимся определять, сможет ли человек вовремя вернуть кредит;
🟠 Проанализируем имеющийся набор данных;
🟠 Создадим пайплайны для обработки числовых и категориальных признаков;
🟠 Обучим модель-классификатор и подберем ее параметры;
🟠 Рассчитаем и проанализируем метрики работы модели.
Для новичков в машинном обучении этот вебинар — отличная возможность получить практические знания на реальном примере. Те, кто уже работают в ML, смогут углубить свои навыки и пообщаться с коллегами в чате.
И абсолютно каждый сможет задать свой вопрос спикеру – специалисту своего дела. Кто знает, может ответ на этот вопрос бустанет вашу карьеру.
➡️ Зарегистрироваться
#вебинар
19 февраля в 19:00 по МСК проведем вебинар, где вместе с Савелием Батуриным построим модель кредитного скоринга. Савелий — Senior ML-Engineer в Postgres Professional, а также преподаватель нашего курса-симулятора «Инженер машинного обучения». Возможно, вы уже даже посещали предыдущий вебинар, где мы строили рекомендательную систему фильмов.
Что будем делать в этот раз:
Для новичков в машинном обучении этот вебинар — отличная возможность получить практические знания на реальном примере. Те, кто уже работают в ML, смогут углубить свои навыки и пообщаться с коллегами в чате.
И абсолютно каждый сможет задать свой вопрос спикеру – специалисту своего дела. Кто знает, может ответ на этот вопрос бустанет вашу карьеру.
#вебинар
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤7👍5😢1
Давно не было от нас видеоподгонов. Сегодня расскажем про функцию
array_agg в SQL. Это агрегатная функция и используется для объединения значений из нескольких строк в один массив. Функция суперполезная, поэтому спешим ею с вами поделиться. Как сказал сам Андрон, автор видео:
Если бы я знал про нее раньше, моя жизнь была бы сильно лучше)
Ждём реакции за качественный дроп 🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥30❤7👍7