Хохлов И.Л.
Эксперт в области IT-решений и баз данных.
Опыт в IT: 20 лет
Опыт обучения: 15 лет
Курс обучения языку SQL и навыкам работы с базами данных, на примере PostgreSql.
СУБД PostgreSql уже долгое время занимает одно из первых мест в мире по популярности среди реляционных СУБД и предоставляет огромные возможности в части программирования.
Современный мир очень быстро развивается и требует постоянно соответствующих знаний и умений! Знание языка SQL и навыки работы с базами данных сейчас одни из самых востребованных! Бизнес почти всех компаний от маленьких до больших использует базы данных! А SQL - это единственный язык, с помощью которого происходит работа с базами данных! Мы подготовили максимально полную программу с максимально простым объяснением, чтобы загрузить в тебя всего за 10 дней максимум знаний и умений! Программа максимум!
УРОК 1. БЫСТРЫЙ СТАРТ В ТЕОРИЮ БАЗ ДАННЫХ И SQL. ПОДГОТОВКА РАБОЧЕГО МЕСТА, СОЗДАНИЕ СОБСТВЕННОЙ БД С ТЕСТОВЫМИ ДАННЫМИ И НАПИСАНИЕ ПЕРВЫХ ЗАПРОСОВ 1. Что такое База Данных (БД) и Система Управления Базами Данных (СУБД); 2. Понятие реляционных Баз Данных. Таблицы, ключи, связи и отношения; 3. Скачивание и установка PostgreSql; 4. Подготовка рабочего места: настройка подключения, создание учебной базы данных. Обзор программы pgAdmin; 5. Группы команд языка SQL (DML, DDL, TCL, DCL); 6. Команда SELECT. Написание простейших запросов выборки данных. Использование условий выборки данных с помощью WHERE; 7. Основные операторы сравнения, операторы IN, LIKE, BETWEEN; 8. Использование нескольких условий одновременно; 9. Использование текстовых, числовых констант в SQL. Работа с датами. Функции преобразования; 10. Сортировка данных с помощью ORDER BY. Многоуровневая сортировка. УРОК 2. СОЕДИНЕНИЯ ТАБЛИЦ 11. Выборка данных одновременно из нескольких таблиц; 12. Типы соединений. LEFT (OUTER) JOIN, RIGHT (OUTER) JOIN, (INNER) JOIN, FULL JOIN, CROSS JOIN и прочие возможности; 13. Назначения, практические примеры использования и ньюансы; 14. Использование нескольких соединений (JOIN-ов) в одном запросе. ANSI стандарт соединений и диалекты; 15. Алиасы (псевдонимы) таблиц в запросах. УРОК 3. ЕЩЁ ОДИН УРОК ПРО СОЕДИНЕНИЯ 16. Соединения таблиц по нескольким условиям; 17. Понятие NULL. Использование условий с IS (NOT) NULL; 18. Работа с дублями, использование DISTINCT; 19. Оптимизация запросов; 20. Комментирование кода; УРОК 4. АГРЕГАТНЫЕ ФУНКЦИИ И ГРУППИРОВКА ДАННЫХ 21. Стандартные агрегатные (обобщающие) функции. Функции SUM, MIN, MAX, AVG и COUNT; 22. Группировка и многоуровневая группировка данных; 23. Одновременное использование сразу нескольких агрегатных функций; 24. Использование COUNT DISTINCT; 25. Создание условий отбора данных на основе результатов агрегатных функций. Использование HAVING; 26. GROUPING SETS, CUBE, ROLLUP; УРОК 5. ПОДЗАПРОСЫ В БЛОКЕ WHERE 27. Подзапросы в блоке WHERE. Использование IN / NOT IN; 28. Использование EXISTS/ NOT EXISTS; 29. Оптимальный выбор оператора в зависимости от требуемого решения и статистических данных используемых таблиц (разберём когда что эффективнее использовать); 30. Псевдостолбцы; УРОК 6. ПОДЗАПРОСЫ В БЛОКЕ SELECT 31. Применение вложенных запросов в блоке SELECT. Получение любых данных посредством подзапросов; 32. Выполнение операций с несколькими подзапросами; 33. Типичные ошибки начинающих специалистов; 34. Обработка пустых (NULL) значений. Функции COALESCE, NULLIF и другие. УРОК 7. ПОДЗАПРОСЫ В БЛОКЕ FROM, ПРИСОЕДИНЕНИЕ ПОДЗАПРОСОВ, ОПТИМИЗАЦИЯ КОДА С ПОМОЩЬЮ CTE. РАБОТА С МНОЖЕСТВАМИ 35. SELECT из подзапроса; 36. Присоединение результатов подзапросов; 37. Решение сложных задач; 38. Полезные функции для работы с данными; 39. Обработка данных с помощью CASE; 40. Работа над множеством данных; Команды UNION, INTERSECT, EXCEPT; УРОК 8. ОКОННЫЕ (АНАЛИТИЧЕСКИЕ) ФУНКЦИИ + ОПТИМИЗАЦИЯ ЗАПРОСОВ 41. Что такое оконные функции и как ими пользоваться; 42. Функции ранжирования RANK, DENSE_RANK; 43. Функции для работы с последующими и предыдущими значениями столбца LAG и LEAD; 44. Функция ROW_NUMBER; 45. Функции FIRST_VALUE и LAST_VALUE; 46. Использование стандартных агрегатных функций в режиме окна; 47. Построение плана выполнения запроса с помощью EXPLAIN; 48. Основные методы оптимизации; 49. Понятие индекса, типы индексов, их создание и применение; 50. Правильная работа с индексами; УРОК 9. ВСТАВКА ДАННЫХ, ИЗМЕНЕНИЕ И УДАЛЕНИЕ (КОМАНДЫ INSERT, UPDATE, DELETE). КОМАНДЫ DML. ТРАНЗАКЦИИ И БЛОКИРОВКИ. КОМАНДЫ TCL 51. Команда INSERT. Вставка одной строки или сразу нескольких строк в базу данных; 52. Изменение данных командой UPDATE; 53. Удаление строк командой DELETE; 54. Транзакции и блокировки; Команды COMMIT и ROLLBACK; 55. Оптимизация DML команд изменения и удаления данных; 56. Методы борьбы с взаимной блокировкой (deadlocks); УРОК 10. ПРОЕКТИРОВАНИЕ И СОЗДАНИЕ ОБЪЕКТОВ БАЗЫ ДАННЫХ. КОМАНДЫ DDL. ПРЕДОСТАВЛЕРИЕ ПРИВИЛЕГИЙ НА ОБЪЕКТЫ БД, КОМАНДЫ DCL 57. Проектирование баз данных, нормализация и денормализация; 58. Создание и изменение таблиц и других объектов баз данных. Удаление объектов БД. Команды DDL; 59. Предоставление и снятие привилегий. Команды DCL. Команды GRANT и REVOKE.
- нужно уметь пользоваться компьютером и логически мыслить;
- 10 онлайн уроков со мной, каждый урок минимум по 1.5 часа (обучение через Zoom); - Домашние самостоятельные задания после каждого урока. Вам будет нужно один-на-один остаться с базой данных (которую мы подготовим вместе) и попробовать выполнить практическую работу; - Начало уроков будет с проверки самостоятельных задач. Разберём как Вы справились с "домашкой", посмотрим что не получилось и что можно оптимизировать; - На он-лайн уроках будем работать! Не просто объяснение и обучение, но и будем вместе решать задачи! - Общение и дополнительные вопросы и по домашней работе, и нет - в закрытой группе Телеграмм. Здесь же буду выкладываться записи эфиров; - Обучение SQL и навыкам работы с базами данных будет на примере СУБД PostgreSQL; - Сертификат по завершению обучению + помощь в составлении резюме.
- вторник и четверг 19:30 (Мск); - суббота 9:30 (Мск). Начинаем 24 сентября!