• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
2024/2025

SQL

Статус: Маго-лего
Когда читается: 3 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 3

Программа дисциплины

Аннотация

Данный блок направлен на углубленное изучение языка SQL, позволяющее студентам писать запросы любой сложности и использовать стандартные функции для обработки данных. В рамках курса студенты научатся решать сложные задачи, применять паттерны для нестандартных кейсов и идеально оформлять SQL-код, соответствующий профессиональным стандартам. Особое внимание уделено подготовке к собеседованиям: разбору ключевых вопросов, оптимизации запросов и освоению передовых подходов работы с базами данных.
Цель освоения дисциплины

Цель освоения дисциплины

  • Писать SQL-запросы любой сложности, включая использование вложенных запросов, аналитических функций и сложных объединений данных.
  • Разбираться в стандартных функциях SQL, понимать их назначение и эффективно применять для обработки, анализа и преобразования данных.
  • Решать задачи любой сложности на языке SQL, включая оптимизацию запросов, обработку больших объемов данных и использование шаблонов проектирования запросов.
  • Отвечать на ключевые вопросы собеседований, демонстрируя глубокое понимание концепций индексации, транзакций, блокировок и других аспектов работы с базами данных.
  • Оформлять SQL-код в соответствии с профессиональными стандартами, обеспечивая его читаемость, структурированность и поддерживаемость.
  • Применять паттерны проектирования для решения нестандартных задач, таких как работа с временными данными, рекурсивные запросы и разбиение данных на группы.
Планируемые результаты обучения

Планируемые результаты обучения

  • Знание структуры баз данных и их таблиц, понимание операторов SELECT, FROM, ORDER BY, LIMIT, а также последовательность выполнения операторов в запросе СУБД.
  • Использовать условные конструкции с помощью CASE и фильтровать данные в таблице с использованием операторов LIKE, IN, BETWEEN, IS NULL
  • Составлять запросы на выборку данных с преобразованиями и работать с результатами подзапросов через ключевое слово WITH
  • Знание принципов агрегирования данных и использование агрегирующих функций, а также умение группировать данные с использованием GROUP BY и оператора HAVING
  • Понимание основных типов джойнов и применение их в различных сценариях, а также знание принципов работы оконных функций и их применение для расчета скользящего среднего и других продвинутых операций
  • Рассчитывать метрики активности пользователей, экономические показатели и маркетинговые метрики, строить дашборды в инструменте Redash и представлять результаты анализа в удобной форме для бизнеса
  • Студент научится писать оптимизированные запросы к БД, подключать к БД с помощью python.
  • Студент познакомится с языком SQL, освоит написание простых запросов для выборки и фильтрации данных.
  • Студент освоит основы работы с таблицами в базах данных, включая их структуру и содержимое.
  • Студент научится использовать Redash для написания и выполнения SQL-запросов.
  • Студент научится писать простые SQL-запросы для выборки и обработки данных.
  • Студент освоит основные функции SQL и их применение для работы с данными.
  • Студент познакомится с основными типами данных в SQL и научится правильно использовать их в запросах.
  • Студент научится использовать фильтры в SQL для выбора и упорядочивания данных.
  • Студент освоит работу с NULL-значениями, включая их обработку и учет в условиях запросов.
  • Студент научится объединять таблицы с использованием различных типов JOIN для работы с данными из нескольких источников.
  • Студент освоит использование нескольких запросов для решения сложных задач обработки данных.
  • Студент научится агрегировать данные с использованием функций, таких как SUM, AVG, COUNT, MAX, MIN.
  • Студент освоит фильтрацию результатов агрегации с помощью условий HAVING.
  • Студент научится использовать Common Table Expressions (CTE) для упрощения сложных запросов и объединения результатов нескольких запросов.
  • Студент освоит использование оконных функций для выполнения сложных вычислений, таких как партиции, сортировка и агрегаты, без изменения структуры данных.
  • Студент научится применять основные функции оконных запросов для анализа данных.
  • Студент научится создавать и удалять таблицы, используя команды DDL, такие как CREATE и DROP.
  • Студент освоит добавление, изменение и удаление записей в таблицах с помощью команд DML, включая INSERT, UPDATE и DELETE.
  • Студент научится использовать регулярные выражения для фильтрации и поиска данных в SQL-запросах.
  • Студент познакомится с рекурсивными запросами и их применением для работы с иерархическими и последовательными данными.
  • Студент освоит паттерны решения задач, применяемые для сложных кейсов в SQL.
  • Студент повторит ключевые темы модуля и познакомится с основными теоретическими вопросами, которые часто встречаются на собеседованиях.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение в SQL
  • Основы SQL
  • Фильтрация и сортировка данных
  • Сложные запросы
  • Агрегация
  • Подзапросы
  • Аналитические функции
  • DML&DDL
  • Дополнительные возможности SQL
  • Техническое собеседование
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание к разделам (урокам) 1-9. Квиз на закрепление основных понятий урока.
    100 тестовых заданий: 1 урок - 11 задания, 2 урок - 15 заданий, 3 урок - 14 заданий, 4 урок - 14 заданий, 5 урок - 5 заданий, 6 урок - 14 задания, 7 урок - 6 заданий, 8 урок - 6 заданий 9 урок - 15 заданий.
  • блокирующий Домашнее задание к разделам (урокам) 1-10. Практ. задания по работе с SQL на написание запросов.
    78 практических задач: 1 урок - 5 заданий, 2 урок - 10 заданий, 3 урок - 10 заданий, 4 урок - 9 заданий, 5 урок - 11 заданий, 6 урок - 13 заданий, 7 урок - 10 заданий, 9 урок - 10 заданий.
  • блокирующий Д.з к разделу 10. Итог.зад. мод., симуляция тех. собеседования. Задание на напис. сложных SQL-запр.
    3 практических задачи.
Промежуточная аттестация

Промежуточная аттестация

  • 2024/2025 3rd module
    Итоговая оценка соответствует сумме баллов за выполненные задания на LMS karpov.courses, приведенные к 10-балльной шкале (см. таблицу в разделе "текущий контроль-критерии оценивания"). Для каждого задания на LMS-платформе karpov.courses определён дедлайн в 14 календарных дней, после наступления которого студенту начисляется 70% от итогового балла за задание.
Список литературы

Список литературы

Рекомендуемая основная литература

  • SQL. Полное руководство, Грофф, Дж., 2018
  • Построение запросов и программирование на SQL : учеб. пособие для вузов, Маркин, А. В., 2008

Рекомендуемая дополнительная литература

  • SQL: быстрое погружение. - 978-5-4461-1835-9 - Шилдс Уолтер - 2022 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/389413 - 389413 - iBOOKS

Авторы

  • Ахмедова Гюнай Интигам кызы