
5. Применение команды select
Рассмотрим такие применения команды SELECT:
1) для статических вычислений в выборке;
2) для построения параметрических запросов;
3) для создания нового вычислительного поля;
4) запрос на создание новой таблицы;
5) запрос на добавление записей в таблицу.
1) Статистические функции. Команду SELECT используют для вычисления и вывода на экран значений статистических функций по полям выборки. Первое предложение в конструкции должно быть таким:
SELECT список функций.
Рассмотрим некоторые статистические функции:
COUNT(поле) вычисляет количество записей с непустым полем, т. е. NOT Null, Null – признак пустого поля;
SUM(поле) вычисляет сумму всех числовых значений поля;
FIRST(поле), LAST(поле) – значения полей в первой и последней записях таблицы;
MIN(поле), MAX(поле) – минимальное и максимальное значения в этих полях;
AVG(поле) – среднее арифметическое значение поля;
Пример 4. Определить среднюю цену товаров, находящихся на складе:
SELECT AVG(Цена) AS t
FROM Склад;
Результат t нужно переписать с экрана.
2) Запрос с параметром. Чтобы вывести на экран выборку всех товаров, цена которых меньше средней, нужно выполнить такой параметрический запрос:
SELECT *
FROM Склад
WHERE Цена<z;
Если некоторое имя (z) в команде WHERE не совпадает с именем поля текущей БД, то оно рассматривается как имя параметра в параметрическом запросе. Откроется окно, куда следует ввести значение параметра (в нашем случае это значение берем из предыдущего примера – t). Обратите внимание в команде WHERE нельзя применять статистические функции.
3) Запрос на создание нового вычисляемого поля. Следующее применение команды SELECT – это создание нового вычисляемого поля, например, СУММА:
SELECT Цена, Количество, Цена*Количество AS Сумма
FROM Склад;
Если вычисление содержит ветвление, то используют функцию IF. Общий вид этой функции такой: IF(условие, значение1, значение2), где значение1 присваивается полю, если условие истинно, а значение2 – если лоно. Значение в поле может меняться в зависимости от некоторого условия. Например, если некоторое числовое поле Количество в выборке не содержит ни одного значения, то его можно продублировать полем Новое-Количество так, чтобы на месте пустых значений поля было написано число 0:
SELECT Цена, Количество, IF(Количество IS NULL, 0, Количество) AS Новое-Количество
FROM Склад;
4) Запрос на создание новой таблицы. Новую таблицу можно создать с помощью такого запроса:
SELECT список полей таблицы-источника
INTO новая таблица {IN внешняя БД}
FROM таблица-источник
{WHERE условие};
5) Запрос на добавление записей. Такой запрос на добавление записей из таблицы1 в таблицу2 имеет вид:
INSERT INTO таблица1(поле1, поле2,…)
SELECT поле1таблицы2, поле2таблицы2,…
FROM таблица2
{WHERE условие};
Методику создания некоторых других запросов языком SQL можно изучить путем конструирования соответствующего запроса QBE и преобразования его в запрос SQL. Информацию о новых служебных словах языка SQL можно получить из файлов справок.
) Запрос на создание нового вычисляемого поля. примера - тся как имя параметра в параметрическом запросе. прос:
. ПОМОЩЬЮ КОНСПрактическая работа № 6