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

Администрирование данных:

CREATE DATABASE – создать новую БД, DROP DATABASE – удалить БД,

GRANT – предоставить права доступа, REVOKE – отменить права доступа и др.

Управление транзакциями:

COMMIT – завершить транзакцию, ROLLBACK – откат транзакции,

SAVEPOINT – сохранить промежуточную точку транзакции.

Соглашения:

-зарезервированные слова – ПРОПИСНЫМИ,

-слова определяемые пользователем – строчными,

-{обязательный элемент},

-[необязательный элемент],

-«…» - необязательная возможность повторения конструкции от 0 до нескольких раз,

-« | » - выбор одного из нескольких.

Синтаксис оператора SELECT:

SELECT [DICTINCT | ALL] {*| [список полей]} FROM <список таблиц>

[WHERE <условие выборки или соединения>] [GROUP BY <список полей результата>] [HAVING <условие для группы>]

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

Простые запросы:

SELECT *

FROM <таблица>

- выводит все столбцы и строки данной таблицы. SELECT < поле1>, < поле2>, … < полеN> FROM <таблица>

- выводит перечисленные столбцы из данной таблицы.

DISTINCT – исключает вывод дубликатов строк. ALL – вывод всех строк таблицы (по умолчанию).

Выборка по условию:

SELECT [DICTINCT | ALL] {*| [список полей]} FROM <список таблиц>

WHERE <условие выборки >

В качестве условий отбора могут быть использованы

предикаты:

=, <>, >, <, <=, >=, AND, OR, NOT - для сравнения результатов вычисления двух выражений,

BETWEEN a AND b – предикат TRUE, когда вычисленное значение попадает в указанный диапазон (NOT BETWEEN a AND b - когда не входит), для числовых и символьных, a < b,

IN – предикат TRUE, когда сравниваемое значение входит в заданное множество (NOT IN – когда не входит),

LIKE – задает шаблон поиска, применим к символьным полям:

-символ «_» допускает наличие одного символа в указанном месте (например: LIKE 'обл_ко '),

-символ «%» допускает в указанном месте последовательности любых символов произвольной длины (например: LIKE 'P%'),

IS NULL – предикат, применяющийся для выявления равенства значения некоторого атрибута неопределенному значению (IS NOT NULL – все наоборот),

EXIST (NOT EXIST ) – используют во встроенных подзапросах.

Примеры: имеем отношение

STUDENT (Kod, Fam, Im, Gruppa, Stip, Ocenka)

Запросы (использовать все варианты ответа):

Вывести всю информацию о студентах. Вывести фамилии студентов и их оценки.

Вывести фамилии студентов (уникальные значения).

Вывести фамилии студентов, получающих стипендию (не получающих).

Вывести фамилии студентов, получивших 4 и 5.

Вывести фамилии студентов, имеющих имена

Владимир и Анатолий.

Вывести фамилии студентов, имеющих фамилию от 'К ' до 'Р' включительно.

Вывести фамилии студентов, не имеющих оценки.

ORDER BY – список полей упорядочивания результата (ASC – возрастание, DESC – убывание).

Запрос:

Вывести фамилии в виде , отсортированном по столбцу Fam в порядке возрастания :

SELECT *

FROM student

ORDER BY Fam ASC

(ASC – по умолчанию, можно не писать).

Агрегатные функции:

COUNT – возвращает кол-во значений в таблице, SUM - возвращает сумму значений (числовых) в

столбце,

AVG - возвращает среднее значение (числовых) в столбце,

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

столбце.

В качестве операнда функций – наименование одного столбца.

При вызове функций исключаются пустые значения (кроме функции COUNT(*)).