Главная страница
Навигация по странице:

  • 25. Операторы языка SQL.

  • Операторы определения данных

  • Операторы манипулирования данными

  • Операторы администрирования данных

  • Операторы управления транзакциями

  • 26. Оператор выбора SELECT. Формирование запросов к базе данных.

  • 27. Агрегатные функции языка. Группирование результатов. Вложенные запросы.

  • Группирование результатов

  • Вложенные запросы

  • 1. Базы данных основные понятия. Введение в базы данных. Определения. 3


    Скачать 273.58 Kb.
    Название1. Базы данных основные понятия. Введение в базы данных. Определения. 3
    Дата21.12.2022
    Размер273.58 Kb.
    Формат файлаdocx
    Имя файлаBSBD.docx
    ТипДокументы
    #856064
    страница9 из 13
    1   ...   5   6   7   8   9   10   11   12   13

    24 Язык SQL. Структура и типы данных языка SQL.


    SQL — язык структурированных запросов, который был разработан для работы с БД, а именно чтобы получать/добавлять/изменять данные, иметь возможность обрабатывать большие массивы информации и быстро получать структурированную и сгруппированную информацию.

    В языке SQL присутствуют как составляющие обе необходимые для работы с базами данных части: язык манипулирования данными – DML и язык определения данных – DDL. Кроме того, данный язык содержит операторы, предназначенные для управления БД.

    CHAR или CHARACTER - Символьные строки постоянной длины в n символов

    INT или INTEGER - Целые числа

    NUMERIC - Точные числа, здесь n — общее количество цифр в числе, m — количество цифр слева от десятичной точки

    DEC или DECIMAL - Точные числа, здесь n — общее количество цифр в числе, m — количество цифр слева от десятичной точки

    SMALLINT - Целые числа меньшего диапазона

    FLOAT - Числа большой точности, хранимые в форме с плавающей точкой. Здесь n — число байтов, резервируемое под хранение одного числа

    REAL - Вещественный тип чисел, который соответствует числам с плавающей точкой, меньшей точности, чем FLOAT

    DOUBLE PRECISION - Специфицирует тип данных с определенной в реализации точностью большей, чем определенная в реализации точность для REAL

    VARCHAR - Строки символов переменной длины

    NCHAR - Строки локализованных символов постоянной длины

    NCHAR VARYING - Строки локализованных символов переменной длины

    BIT - Строка битов постоянной длины

    BIT VARYING - Строка битов переменной длины

    DATE - Календарная дата

    TIMESTAP - Дата и время

    INTERVAL - Дата и время

    25. Операторы языка SQL.


    Любой SQL-оператор состоит из зарезервированных слов и слов, определяемых пользователем в соответствии с установленными синтаксическими правилами.

    SQL содержит 4 группы операторов:

    1) Операторы определения данных: CREATE, DROP, ALTER и др.

    Операторы описания данных предназначены для описания (создания), изменения описания и уничтожения объектов базы данных.

    2) Операторы манипулирования данными: INSERT, DELETE, SELECT, UPDATE и др.

    Предназначены для заполнения таблиц данными и для обновления загруженной в них информации, а также для выборки.

    3) Операторы администрирования данных:

    GRANT. Предоставить права доступа на ряд действий над некоторым объектом БД

    REVOKE. Лишить прав доступа к некоторому объекту или некоторым действиям над объектом

    (CREATE/ ALTER/ DROP) (DATABASE/ DBAREA/ PASSWORD) – (создать/ изменить/ удалить) (базу данных/ область хранения/ пароль)

    4) Операторы управления транзакциями.

    COMMIT. Завершить транзакцию — завершить обработку информации, объединенную в транзакцию

    ROLLBACK. Откатить транзакцию — отменить изменения, проведенные в ходе выполнения транзакции

    SAVEPOINT. Сохранить промежуточную точку выполнения транзакции — сохранить промежуточное состояние БД, пометить его для того, чтобы можно было в дальнейшем к нему вернуться.

    26. Оператор выбора SELECT. Формирование запросов к базе данных.


    Назначение оператора SELECT состоит в выборке и отображении данных одной или нескольких таблиц БД. Этот исключительно мощный, наиболее часто используемый оператор реализует все операции реляционной алгебры. Возможности данного оператора широки и разнообразны. Один и тот же запрос может быть реализован несколькими способами, которые могут существенно отличаться по времени исполнения.

    SELECT [DISTINCT| ALL] {*| [<список полей>]}

    FROM <Список таблиц>

    [WHERE <Предикат-условие выборки или соединения>]

    [GROUP BY <Список полей результата>]

    [HAVING <Предикат-условие для группы>]

    [ORDER BY <Список полей, по которым требуется упорядочить вывод>]

    ALL – в результирующую таблицу включаются все строки, удовлетворяющие условиям запроса

    DISTINCT - предназначено для приведения таблицы в соответствие с принципами теории отношений, где предполагается отсутствие дубликатов строк

    * - в результирующий набор включаются все столбцы из исходной таблицы запроса.

    27. Агрегатные функции языка. Группирование результатов. Вложенные запросы.


    В стандарте языка SQL определено несколько агрегатных функций:

    - COUNT — возвращает количество значений в указанном столбце;

    - SUM — возвращает сумму значений в указанном столбце;

    - AVG — возвращает усредненное значение в указанном столбце;

    - MIN — возвращает минимальное значение в указанном столбце;

    - MAX — возвращает максимальное значение в указанном столбце.

    В качестве операнда данных функций может использоваться наименование только одного столбца, и все они возвращают единственное значение. С функциями SUM и AVG могут использоваться только числовые поля. С функциями COUNT, MAX и MIN могут использоваться как числовые, так и символьные поля. При вызове всех перечисленных выше функций, кроме функции COUNT (*), осуществляется исключение всех пустых значений и только после этого операция применяется к оставшимся значениям столбца. Функция COUNT (*) призвана осуществлять подсчет всех строк таблицы независимо от того, какие значения в них находятся.

    Группирование результатов. Суть операции группировки состоит в том, что все множество строк таблицы разбивается на группы, в каждой из которых собираются строки, имеющие одинаковые значения атрибутов, которые заданы в списке группировки. Обработка такой информации реализуется путем применения агрегатных функций уже к каждой отдельной группе и выдаче полученных итогов.

    В языке SQL для осуществления операции группировки в оператор SELECT включается фраза GROUP BY. Запрос, в котором присутствует фраза GROUP BY, называется группирующим запросом, а столбцы, перечисленные в этой фразе, называются группирующими столбцами.

    Стандарт языка требует, чтобы предложение SELECT и фраза GROUP BY были тесно связаны между собой. Если в запросе должна использоваться группировка, то каждый элемент списка в предложении SELECT должен иметь единственное значение для всей группы. К тому же в предложении SELECT могут включаться в этом случае только следующие типы данных:

    - имена столбцов;

    - агрегатные функции;  константы;

    - выражения, состоящие из перечисленных выше элементов.

    Таким образом, предложение GROUP BY позволяет определять подмножество значений в особом поле в терминах другого поля и применять функцию агрегата к подмножеству. Это дает возможность объединять поля и агрегатные функции в едином предложении SELECT

    Вложенные запросы. Стандарт языка позволяет в тело одного оператора SELECT внедрять другой оператор SELECT. В такой ситуации можно рассматривать внешний и внутренний (внедряемый) операторы запроса. Обычно внутренний запрос генерирует значение, которое проверяется в предикате внешнего запроса (в предложении WHERE или HAVING), определяющего, верно оно или нет. Если внутренний оператор запроса помещен в предложения WHERE и HAVING внешнего оператора SELECT, то создается ситуация вложенных запросов (подзапросов).

    В сочетании с другими возможностями оператора выбора, такими как группировка, возможность вкладывать запросы внутрь друг друга представляет собой мощное средство для достижения нужного результата. Во фразе FROM оператора SELECT, если при формировании запроса требуется более чем один экземпляр некоторой таблицы, допустимо применять синонимы к именам таблицы. Синонимы задаются с использованием ключевого слова AS.
    1   ...   5   6   7   8   9   10   11   12   13


    написать администратору сайта