Курсы по Oracle SQL.
Учебный план Oracle SQL.
УРОК 0. ВВОДНЫЙ УРОК
Установка клиента ORACLE. Подключение к собственной тестовой базе данных.
УРОК 1. РЕЛЯЦИОННЫЕ БАЗЫ ДАННЫХ
Что представляет собой база данных. Системы управления базами данных. Реляционные базы данных. Отношения, типы связей. Первичный и внешний ключи. Терминология.
Типы команд языка SQL. DML и DDL команды. Структура SELECT.
Средства работы с БД. PL/SQL Developer, SQL Developer, TOAD, SQL Management Studio, phpMyAdmin, HeidiSQL.
УРОК 2. НАПИСАНИЕ ПРОСТЫХ ЗАПРОСОВ ПОЛУЧЕНИЯ ДАННЫХ
Предложение SELECT. Использование условий выборки данных с помощью WHERE. Основные операторы сравнения, оператор IN, BETWEEN, (NOT) LIKE, (NOT) IN. Использование нескольких условий одновременно.
Использование текстовых, числовых констант в SQL. Правильная работа с датами. Функции преобразования.
Сортировка данных с помощью ORDER BY. Многоуровневая сортировка.
УРОК 3. СОЕДИНЕНИЯ ТАБЛИЦ С ПОМОЩЬЮ JOIN
Выборка данных одновременно из нескольких таблиц. Типы соединений. LEFT (OUTER) JOIN, RIGHT (OUTER) JOIN, (INNER) JOIN, FULL JOIN, CROSS JOIN. Назначения, практические примеры использования и нюансы.
Использование нескольких соединений (JOIN-ов) в одном запросе. ANSI стандарт соединений и диалекты. Алиасы (псевдонимы) таблиц в запросах.
УРОК 4. ДОПОЛНИТЕЛЬНЫЕ СЛОЖНЫЕ ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ СОЕДИНЕНИЙ
Объединения таблиц по нескольким условиям. Понятие NULL. Использование условий с IS (NOT) NULL. Работа с дублями, использование DISTINCT. Оптимизация запросов.
УРОК 5. ГРУППИРОВКА ДАННЫХ ПОСРЕДСТВОМ GROUP BY
Группировка и многоуровневая группировка данных. Стандартные аггрегатные (обобщающие) функции. Функция SUM, MIN, MAX, AVG и COUNT.
Одновременное использование сразу нескольких аггрегатных функций. Использование COUNT DISTINCT.
Создание условий отбора данных на основе результатов аггрегатных функций. Использование HAVING.
УРОК 6. ПСЕВДОСТОЛБЦЫ И ПСЕВДОТАБЛИЦЫ. КОММЕНТАРИИ В SQL-ЗАПРОСАХ
Что такое псевдостолбцы и для чего они нужны. Примеры эффективного их применения.
Таблица DUAL. Вывод данных не из таблиц.
Однострочные и многострочные комментарии в SQL-коде. Комментирование кода.
УРОК 7. ПОДЗАПРОСЫ В БЛОКЕ WHERE. КОНСТРУКЦИЯ IN
Использование вложенных запросов для создания условий выборки основного запроса. Конструкция IN и NOT IN.
УРОК 8. ПОДЗАПРОСЫ В БЛОКЕ WHERE. КОНСТРУКЦИЯ EXISTS
Конструкция EXISTS и NOT EXISTS. Сравнение IN и EXISTS, и выбор более эффективного метода в разных случаях. Другие примеры использования подзапросов в блоке WHERE.
УРОК 9. ПОДЗАПРОСЫ В БЛОКЕ SELECT
Применение вложенных запросов в блоке SELECT. Получение любых данных посредством подзапросов.
Выполнение операций с несколькими подзапросами. Типичные ошибки начинающих специалистов.
Обработка пустых (NULL) значений. Функции NVL (ISNULL), NVL2, COALESCE.
УРОК 10. ПОДЗАПРОСЫ В БЛОКЕ FROM
SELECT из подзапроса. Присоединение результатов подзапросов. Решение сложных задач.
УРОК 11. ПОЛЕЗНЫЕ ФУНКЦИИ ДЛЯ РАБОТЫ С ДАННЫМИ
Числовые функции: ROUND, TRUNC, FLOOR, CEIL.
Функции для работы с текстом: INSTR, SUBSTR, LENGTH, TRIM, LPAD, RPAD. Конкатенация - сцепление строк.
Функции для работы с датами: получение текущей даты, расчет разницы между датами.
Функции преобразования.
УРОК 12. ОБЪЕДИНЕНИЯ ЗАПРОСОВ С ПОМОЩЬЮ UNION И UNION ALL
Использование нескольких предложений SELECT в одном запросе. Объединение результатов с и без исключения дублей.
Разница результатов. Исключение результирующих данных одного запроса из данных другого. Использование MINUS. Разница множеств.
УРОК 13. ОПТИМИЗАЦИЯ ЗАПРОСОВ
Использование индексов и правильное написание SQL. Использование хинтов. План выполнения запросов. Тонкости оптимизации запросов в различных СУБД.
УРОК 14. ОБРАБОТКА ДАННЫХ С ПОМОЩЬЮ CASE И DECODE
Анализ табличных данных и результатов подзапросов. Гибкое использование CASE и DECODE. Применение CASE и DECODE в блоке SELECT, в блоке ORDER BY и других местах. Создание произвольной сортировки с условиями. Использование подзапросов в CASE и DECODE.
УРОК 15. ВСТАВКА (ДОБАВЛЕНИЕ) НОВЫХ СТРОК В ТАБЛИЦУ. КОМАНДА INSERT
Варианты написания команды INSERT. Вставка одной или сразу нескольких строк в таблицу.
УРОК 16. ИЗМЕНЕНИЕ ДАННЫХ. КОМАНДА UPDATE
Изменение данных по условиям. Использование условий и подзапросов.
УРОК 17. УДАЛЕНИЕ СТРОК ИЗ ТАБЛИЦ. КОМАНДА DELETE
Удаление строк по условиям. Использование условий и подзапросов для определения удаляемых строк.
УРОК 18. ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
Объекты базы данных. Проектирование таблиц. Нормализация и денормализация. Ключи, индексы, ограничения.
УРОК 19. СОЗДАНИЕ ОБЪЕКТОВ БАЗЫ ДАННЫХ. СОЗДАНИЕ ТАБЛИЦ
Команда CREATE. Создание новых таблиц баз данных. Создание столбцов, настройка их атрибутов, выбор типа данных. Создание ключей и индексов.
УРОК 20. СОЗДАНИЕ ПОСЛЕДОВАТЕЛЬНОСТЕЙ (СИКВЕНСОВ)
Назначение сиквенсов и тонкости использования.
УРОК 21. СОЗДАНИЕ ПРЕДСТАВЛЕНИЙ (VIEW)
Создание представлений и материализованных представлений.
УРОК 22. ТРИГГЕРЫ И ДРУГИЕ ОБЪЕКТЫ БАЗ ДАННЫХ
Назначение триггеров. Виды триггеров. Создание (программирование на PL/SQL) триггеров.
Обзор других объектов базы данных.
УРОК 23. ИЗМЕНЕНИЕ И УДАЛЕНИЕ ОБЪЕКТОВ БАЗ ДАННЫХ
Изменение и удаление таблиц, сиквенсов, представлений, триггеров и других видов объектов баз данных. Команда ALTER. Команда CREATE OR REPLACE. Команда DELETE.
УРОК 24. РАБОТА С ПОЛЬЗОВАТЕЛЯМИ, СХЕМАМИ И РОЛЯМИ В БАЗЕ ДАННЫХ
Создание новых пользователей в базе данных, изменение их паролей, удаление пользователей.
Создание ролей, назначение ролей пользователям. Снятие ролей.
Предоставление и снятие прав на объекты базы данных, на действия в базе данных конкретным пользователям и ролям. Команды GRANT и REVOKE.
УРОК 25. ТРАНЗАКЦИИ
Понятие транзакции. Применение транзакции. Команды COMMIT и ROLLBACK.
Автономные транзакции. Поведение транзакции после команд DML и DDL. Команда TRUNCATE.
УРОК 26. СОЗДАНИЕ ХРАНИМЫХ ОБЪЕКТОВ В БАЗЕ ДАННЫХ, СОЗДАНИЕ ФУНКЦИЙ
Назначение хранимых объектов базы данных. Типы хранимых объектов. Примеры функций и процедур. Программирование функций. Использование созданных функций в других участках PL/SQL кода и SQL-запросах. Основы PL/SQL.
УРОК 27. АНАЛИТИЧЕСКИЕ (ОКОННЫЕ ФУНКЦИИ)
Назначение аналитических (оконных) функций. Решение стандартных аналитических задач.
подробнее +7 701 962-63-83, +7 700 350-00-16