Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
38
Добавлен:
18.03.2015
Размер:
82.43 Кб
Скачать

Ис(3)Язык запросов, как универсальный язык реляционной бд.

SQL (Structured Query Language)-структурированный язык запросов - стандартный язык запросов по работе с реляционными БД. SQL нельзя в полной мере отнести к традиционным языкам програм-ния, он не содержит традиционные операторы, управляющие ходом выполнения программы, операторы описания типов и многое другое, он содержит только набор стандартных операторов доступа к данным, хранящимся в базе данных. Операторы SQL встраиваются в базовый язык программир., кот-ым может быть любой стандартный язык типа C++, PL, COBOL и т.д. Кроме того, операторы SQL могут выполняться непосредственно в интерактивном режиме. SQL является полным языком, в нем присутствуют не только операции запросов, но и операторы, соответствующие DDL — Data Definition Language — языку описания (определения) данных, DML(-manipulation-) язык манипуляции данными, DCL(-control-) язык доступа к данным, TCL(transaction control) язык подтверждения данных.

Операторы языка определения данных DDL (CREATE, DROP, ALTER)

CREATE TABLE-.создаёт новую таблицу из БД.

DROP TABLE- удалить таблицу из БД

ALTER TABLE – изменяет структуру существующей таблицы.

Операторы языка манипулирования данными DML (INSERT, DELETE,SELECT, UPDATE).

DELETE

Удалить строки

INSERT

Вставить строку

SELECT

Выбрать строки

UPDATE

Обновить строку

Язык запросов (Data Query Language) в SQL состоит из единственного оператора SELECT. Этот единственный оператор поиска реализует все операции реляционной алгебры. Синтаксис оператора SELECT имеет следующий вид:SELECT [ALL(т.е. в результирующий набор строк включаются все строки) | DISTINCT(т.е. включаются только различные строки)] «писок полей>|*( т.е. в результирующий набор включаются все столбцы из исходных таблиц запроса))

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

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

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

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

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

В разделе FROM задается перечень исходных отношений (таблиц) запроса.

В разделе WHERE задаются условия отбора строк результата или условия соединения кортежей исходных таблиц, подобно операции условного соединения в реляционной алгебре. В разделе GROUP BY задается список полей группировки.

В разделе HAVING задаются предикаты-условия, накладываемые на каждую группу.

В части ORDER BY задается список полей упорядочения результата, т.е. список полей, кот-ый определяет порядок сортировки в результирующем отношении.

inner join Объединяет две таблицы, где каждая строка обеих таблиц в точности соответствует условию. Если для строки одной таблицы не найдено соответствия в другой таблице, строка не включается в набор.

,left join К левой таблице присоединяются все записи из правой, соответствующие условию (по правилам inner join), плюс все не вошедшие записи из левой таблицы, поля правой таблицы заполняются значениями NULL.

right join К левой таблице присоединяются все записи из правой соответствующие условию (по правилам inner join) плюс все не вошедшие записи из правой таблицы, поля левой таблицы заполняются значениями NULL

full join К левой таблице присоединяются все записи из правой, соответствующие условию (по правилам inner join), плюс все не вошедшие записи из правой таблицы, поля левой таблицы заполняются значениями NULL и плюс все не вошедшие записи из левой таблицы, поля правой таблицы заполняются значениями NULL); использование агрегатных функций, группировка записей (предложение group by). Запросы могут производить обобщенное групповое значение полей точно также как и значение одного поля. Это делает с помощью агрегатных функций, они производят одиночное значение для всей группы таблицы. Имеется список этих функций: * COUNT – производит номера строк или не – NULL значения полей которые выбрал запрос.

SUM –  производит арифметическую сумму всех выбранных значений данного пол. * AVG - производит усреднение всех выбранных значений данного пол. * MAX – производит наибольшее из всех  выбранных значений данного пол. * MIN – производит наименьшее из всех выбранных значений данного пол.

Соседние файлы в папке ГОС информатика