Опубликован: 28.12.2011 | Уровень: для всех | Доступ: свободно
Курс рассказывает о диалекте SQL, предлагаемом фирмой Oracle для работы с базами данных своего типа. Рассматриваются конструкции языка, касающиеся работы с моделью предметной области и имеющие технологический характер. Изложение сопровождается практическими примерами.
Широко распространенная СУБД Oracle представляет собой классическую реализацию систем на основе SQL. Курс рассказывает об основах диалекта SQL, реализованного этой СУБД. Улучшению понимания способствует ретроспективный взгляд на возникновение тех или иных конструкций языка, а также соотношение их с реляционной моделью, которой SQL обязан своим появлением, и с элементами стандарта ANSI/ISO, связанного с Oracle SQL взаимно-обратным влиянием. Значительная часть утверждений в курсе проиллюстрирована примерами. (Все изложение касается варианта языка в последней версии 11.2 СУБД Oracle.)

План занятий

ЗанятиеЗаголовок <<Дата изучения
-
Лекция 1
52 минуты
Диалект SQL фирмы ORACLE
Рассматриваются понятия, которые определяют диалект SQL, предлагаемый фирмой Oracle, в его нынешнем состоянии и формируют контекст употребления этого диалекта. В основном это реляционная модель данных и реляционное проектирование, а также стандартный SQL.
Оглавление
    -
    Тест 1
    39 минут
    -
    Лекция 2
    18 минут
    Инструменты для работы с данными и демонстрационный пример
    Рассматриваются штатные инструменты для обращения к БД, предлагаемые фирмой Oracle. Происходит знакомство с демонстрационным примером.
    Оглавление
      -
      Тест 2
      36 минут
      -
      Лекция 3
      1 час 1 минута
      Создание, удаление и изменение структуры таблиц
      Рассматриваются главные конструктивные операции с таблицами — основным средством моделирования данных в БД Oracle, — а также сопутствующие логические и технологические особенности этих операций.
      Оглавление
        -
        Тест 3
        36 минут
        -
        Лекция 4
        57 минут
        Выражения в Oracle SQL
        Рассматривается построение выражений для использования в операциях выборки данных SELECT и изменения данных INSERT, UPDATE и DELETE.
        Оглавление
          -
          Тест 4
          36 минут
          -
          Лекция 5
          1 час 9 минут
          Выборка данных. Общее построение предложения SELECT и фразы FROM и WHERE
          Рассматриваются общие принципы построения и отработки предложения SELECT. Приводятся правила построения фразы FROM для указания источников данных и фразы WHERE для отбора строк.
          Оглавление
            -
            Тест 5
            36 минут
            -
            Лекция 6
            35 минут
            Выборка данных. Фраза SELECT предложения SELECT
            Приводятся правила построения и возможности фразы SELECT, используемой для формирования столбцов окончательного ответа в предложении SELECT. Рассматривается фраза PIVOT/UNPIVOT, логически объединяющая фразы SELECT и FROM.
            Оглавление
              -
              Тест 6
              36 минут
              -
              Лекция 7
              53 минуты
              Выборка данных. Фразы ORDER BY, GROUP BY и CONNECT BY предложения SELECT. Множественные операции
              Применительно к предложению SELECT рассматриваются фразы ORDER BY для упорядочения строк окончательного ответа, GROUP BY для группировки строк по общим признакам и CONNECT BY для выполнения запросов по иерархически организованым данным.
              Оглавление
                -
                Тест 7
                36 минут
                -
                Лекция 8
                52 минуты
                Соединения таблиц в предложении SELECT
                Рассматриваются основы построения соединений таблиц в запросах SELECT и возможности построения соединений в Oracle.
                Оглавление
                  -
                  Тест 8
                  36 минут
                  -
                  Лекция 9
                  37 минут
                  Обновление данных в таблицах
                  Рассматриваются операции DML по внесению изменений в данные существующих таблиц: INSERT, UPDATE, DELETE и MERGE.
                  Оглавление
                    -
                    Тест 9
                    36 минут
                    -
                    Лекция 10
                    58 минут
                    Ограничения целостности. Представления данных
                    Затрагиваются две темы: ограничений целостности в таблицах и построения и употребления представлений данных трех разновидностей, существующих в Oracle.
                    Оглавление
                      -
                      Тест 10
                      36 минут
                      -
                      Лекция 11
                      31 минута
                      Объектные типы данных в Oracle
                      Рассматривается самостоятельное создание и использование объектных данных в Oracle. Приводятся примеры встроенных объектных данных, полезных прикладному программисту.
                      Оглавление
                        -
                        Тест 11
                        36 минут
                        -
                        Лекция 12
                        52 минуты
                        Служебные виды объектов. Работа с редакциями объектов
                        Рассматриваются две темы: существующих в Oracle объектов хранения, играющих вспомогательную роль в построении и употреблении БД, а также возможности построения редакций хранимых объектов БД.
                        Оглавление
                          -
                          Тест 12
                          36 минут
                          -
                          Лекция 13
                          57 минут
                          Вопросы оптимизации. Транзакции и блокировки
                          Приводятся некоторые общие сведения об оптимизации запросов в Oracle. Рассматриваются механизмы и примеры организации транзакций как средства регулирования доступа к данным базы.
                          Оглавление
                            -
                            Тест 13
                            36 минут
                            -
                            Лекция 14
                            31 минута
                            Некоторые примеры составления запросов. Дополнительные сведения об аналитических функциях
                            Приводятся некоторые типичные примеры запросов к БД и подстерегающих программиста опасностей. Дополнительно приводятся более подробные сведения об аналитических функциях.
                            Оглавление
                              -
                              Тест 14
                              36 минут
                              -
                              5 часов
                              -
                              Ярослав Прозоров
                              Ярослав Прозоров

                              В лекции № 7 "Введение в Oracle SQL" в подразделе "Несамостоятельность группировки с обобщениями ROLLUP, CUBE и GROUPING SETS"  представленная таблица сравнения содержит ошибки - окончания запросов пропущены. Видимо, ошибки вызваны некорректным переносом материала лекции.

                              Володимир Миколайчук
                              Володимир Миколайчук
                              Помогите разобраться поетапно с логикой запроса
                              -------TOOLS
                              NAME PRICE TYPE
                              drill 155 A
                              sawzall 192 N
                              mitre saw 292 M
                              router 86 I
                              RAD 145 M
                              jigsaw 128 I
                              screwdriver 77 P
                              ------TOOL_TYPES
                              TYPE USAGE
                              A Always
                              I Often
                              M Sometimes
                              N Rarely
                              P Never

                              Запрос SQL:
                              SELECT t.type, SUM(t.price)
                              FROM tools t
                              GROUP BY t.type
                              HAVING SUM(t.price) >= (SELECT AVG(price)
                              FROM tools
                              WHERE type IN (SELECT type
                              FROM tool_types
                              WHERE usage = 'Often'));

                              И сколько строк он все таки вернет
                              Жанбек Сарсенов
                              Жанбек Сарсенов
                              Россия, Москва, Московский Государственный Университет имени Ломоносова М.В., 2002