106
Таблица 5.1
Описание параметров оператора SELECT
Параметр
Описание
DISTINCT | ALL
DISTINCT
– предотвращает дублирование данных, которые
будут извлечены.
ALL
(по умолчанию) – приведет к извлечению всех
данных
{* |
<величина> [,
<величина> ...]
}
Звездочка (
*
) означает, что надо извлекать все колонки из
указанных таблиц.
<величина> [, <величина> ...] – извлекает список указанных
колонок, переменных или выражений
INTO
:Переменная [,
:Переменная ...]
Используется только в триггерах и хранимых процедурах для
операторов SELECT, возвращающих не более одной строки.
Указывается
список переменных, в которые извлекаются
величины
FROM
[,
...]
Указывает список таблиц, просмотров и хранимых
процедур, из которых извлекаются данные. Список может
включать соединения и соединения могут быть
вложенными
table
Имя существующей в базе данных таблицы
view
Имя существующего базе данных просмотра
procedure
Имя существующей хранимой процедуры, предназначенной
для использования в операторе SELECT
Псевдоним
Короткое альтернативное имя для таблицы, просмотра или
колонки. После описания в , псевдоним может
использоваться для ссылок на таблицу или просмотр
join_type
Задает тип соединения, которое может быть внутренним или
внешним
WHERE
<условие
поиска>
Указывает условие, которое ограничивает количество
извлекаемых строк
GROUP BY
Колонка [,
Колонка ...]
Разбивает результат запроса на группы, содержащие все
строки с идентичными значениями указанными в списке
колонок
HAVING
<условие поиска>
Использует совместно с GROUP BY. Задает условие, которое
ограничивает количество возвращаемых групп
UNION
[
ALL
]
Объединяет результаты нескольких запросов. Все запросы
должны извлекать одинаковое количество столбцов, тип
данных каждого столба первого запроса должен совпадать с
типом данных других запросов, имена столбцов в разных
запросах мо- гут отличаться. Необязательный параметр ALL
указывает, что надо выводить одинаковые строки
ORDER BY
<список сортировки>
Указывает колонки, по которым будет производиться
сортировка извлекаемых строк. Можно указывать либо имена
коло- нок, либо их порядковые номера в списке извлекаемых
колонок. Если указать ASC, то строки будут выдаваться в
порядке возрастания значений сортируемых полей, если DESC
– в порядке убывания значений
Как видно из синтаксиса оператора
SELECT,
обязательными являются только
предложение
SELECT
с перечнем выдаваемых колонок и предложение
FROM
.
Пример простейшего оператора
SELECT
:
-- Выдать перечень всех служащих:
SELECT * FROM
Employee;
107
Ниже приведено несколько упрощенных вариантов синтаксиса оператора
SELECT
, помогающих научиться составлять простые запросы.
Упрощенный синтаксис внутреннего соединения
(стандарт SQL-92):
SELECT
Колонка [, Колонка ...]
| *
FROM
[
INNER
]
JOIN
[
ON
<условие поиска>]
[
WHERE
<условие поиска>];
Упрощенный синтаксис внешнего соединения
:
SELECT
Колонка [, Колонка ...]
| *
FROM
{LEFT | RIGHT | FULL}
[
OUTER
]
JOIN
[
ON
<условие поиска>]
[
WHERE
<условие поиска>];
Упрощенный синтаксис использования подзапроса
:
SELECT
[
DISTINCT
] Колонка [, Колонка ...]
FROM
[, ...]
WHERE
{
expression
{
[
NOT
]
IN |
<оператор сравнения>
}
|
[
NOT
]
EXISTS
}
(SELECT
[
DISTINCT
] Колонка [, Колонка ...]
FROM
[, ...]
WHERE
<условие поиска>
)
;
5.5.
Задание
Практическую работу следует выполнять в следующем порядке:
1. Изучить синтаксис оператора
SELECT
и примеры запросов к учебной базе
данных ‘
University.mdf
’.
2. Выполнить в окне ‘SQL Editor’
27
запроса к базе данных, согласно приведенным
в практической работе образцам выполнения запросов и сохранять каждый под именами
‘
Lab5-k.sql’
, где k – номер запроса по порядку, в своей рабочей папке. Каждый запрос
должен иметь комментарии с описанием, а файл в целом должен иметь комментарии со
сведениями об авторе и дате создания.
5.6.
Ход работы
Примечание.
У вас должны быть перед выполнением этой практической работы
созданы все таблицы базы данных университета, созданы ключи, а также заполнены
данными.
Выполнение sql-запросов
Для выполнения запросов
SELECT
в программе ‘SQL Server Managmant Studio’
необходимо выполнить следующие действия:
1. Подключиться к базе данных и выполнить команду ‘
Создать запрос
’. В
результате откроется окно ‘
Конструктора запросов
’ (рис. 1).
108
TP PT
Рис. 1. Окно выполнения запросов
2. Ввести текст запроса согласно рис.1.
3. Нажать на панели инструментов кнопку
[
Выполнить
] .
4. Если запрос правильный, то в результате произойдет его выполнение и
результат будет отображен на вкладке ‘
Результаты
’ (рис. 2).
Рис. 2. Окно с результатом выполнения запроса
5. Количество извлеченных в результате выполнения запроса строк отображается
над сеткой с данными справа. На рис.2 там содержится строка ‘3 строк’.
В данном
примере извлечено столько строк, сколько требуется, чтобы заполнить сетку (в ней
помещается только 3 строки) * .
6. Чтобы узнать, сколько всего строк соответствуют выполненному оператору,
надо перейти в конец отображаемого набора данных.
Чтобы выполнить другой запрос, надо вернуться на вкладку ‘
Редактора
’, создать
новый запрос и повторить те же действия.
К тексту ранее выполнявшихся правильных запросов можно вернуться, если
перейти на вкладку ‘
История
’.
Достарыңызбен бөлісу: