Примеры на формирование запросов
Пример №1
Использование условия отбора(сравнение) в WHERE
Таблица1
|
Номер
| Фамилия
| Имя
| Отчество
|
| Чистяков
| Сергей
| Витальевич
|
| Маринин
| Илья
| Сергеевич
|
| Новиков
| Владимир
| Петрович
|
| Стариков
| Илья
| Игоревич
|
| Емельянов
| Сергей
| Анатольевич
|
|
|
|
|
SELECT Таблица1.Номер, Таблица1.Фамилия, Таблица1.Имя, Таблица1.Отчество
FROM Таблица1
WHERE (((Таблица1.Имя)="Илья"));
Запрос1
|
Номер
| Фамилия
| Имя
| Отчество
|
| Маринин
| Илья
| Сергеевич
|
| Стариков
| Илья
| Игоревич
|
Пример № 2
Использование условия отбора в WHERE(логический оператор)
Таблица2
|
Номер
| Фамилия
| Имя
| Отчество
|
| Чистяков
| Сергей
| Витальевич
|
| Маринин
| Илья
| Сергеевич
|
| Новиков
| Владимир
| Петрович
|
| Стариков
| Илья
| Игоревич
|
SELECT Таблица1.Номер, Таблица1.Фамилия, Таблица1.Имя, Таблица1.Отчество
FROM Таблица1
WHERE (((Таблица1.Имя)="Илья" Or (Таблица1.Имя)="Сергей"));
Запрос2
|
Номер
| Фамилия
| Имя
| Отчество
|
| Чистяков
| Сергей
| Витальевич
|
| Маринин
| Илья
| Сергеевич
|
| Стариков
| Илья
| Игоревич
|
| Емельянов
| Сергей
| Анатольевич
|
Пример №3
Формирование вычисляемого столбца с использованием псевдонима.
Таблица2
|
Наименование
| Осталось на складе
| Продано
|
Карандаши
|
|
|
Ручки
|
|
|
Тетради
|
|
|
SELECT Таблица2.Наименование, Таблица2.[Осталось на складе], Таблица2.Продано, Таблица2![Осталось на складе]+Таблица2!Продано AS Всего
FROM Таблица2;
Запрос3
|
Наименование
| Осталось на складе
| Продано
| Всего
|
Карандаши
|
|
|
|
Ручки
|
|
|
|
Тетради
|
|
|
|
Пример №4
Формирование вычисляемых столбцов с использованием псевдонима и функции Sum().
Таблица3
|
|
Товар
| Стоимость
| Количество на складе
|
Карандаш
| 3,00р.
|
|
Краски
| 15,00р.
|
|
Ручка
| 7,00р.
|
|
Тетрадь
| 12,00р.
|
|
Запрос4
|
Sum-Стоимость
| Sum-Количество на складе
|
37,00р.
|
|
SELECT Sum(Таблица3.Стоимость) AS [Sum-Стоимость], Sum(Таблица3.[Количество на складе]) AS [Sum-Количество на складе]
FROM Таблица3;
Пример №5
Изменение данных - команда UPDATE
Таблица4
|
ФИО
| Зарплата
| Должность
|
Иванов
| 11 000,00р.
| менеджер
|
Петров
| 10 000,00р.
| продавец
|
Сидоров
| 19 000,00р.
| директор
|
Запрос5
|
ФИО
| Зарплата
|
Петров
| 10 000,00р.
|
Семенов
| 11 000,00р.
|
Сидоров
| 19 000,00р.
|
UPDATE Таблица4. SET Таблица4.ФИО = [Введите фамилию], Таблица4.Зарплата = [Введите зарплату];
Пример №6
Удаление данных - команда DELETE
Таблица5
|
Сотрудник
| Зарплата
| Должность
|
Иванов
| 14 000,00р.
| менеджер
|
Петров
| 9 000,00р.
| продавец
|
Сидоров
| 15 000,00р.
| бухгалтер
|
DELETE Таблица5.Сотрудник
FROM Таблица5
WHERE (((Таблица5.Сотрудник)=[Введите фамилию]));
Запрос6
|
Сотрудник
| Зарплата
| Должность
|
Иванов
| 0,00р.
|
|
Петров
| 0,00р.
|
|
Семенов
| 0,00р.
|
|
Сидоров
| 0,00р.
|
|
Пример №7
Добавление данных- команда - INSERT
Таблица6
|
Сотрудник
| Зарплата
| Должность
|
Иванов
| 14 000,00р.
| бухгалтер
|
Петров
| 18 000,00р.
| менеджер
|
Сидоров
| 19 000,00р.
| директор
|
INSERT INTO Таблица6 ( Сотрудник, Должность, Зарплата )
SELECT [Введите фамилию] AS Сотрудник, [Введите должность] AS Должность, [Введите зарплату] AS Зарплата
FROM Таблица6;
Запрос7
|
Сотрудник
| Зарплата
| Должность
|
Иванов
| 14 000,00р.
| бухгалтер
|
Петров
| 18 000,00р.
| менеджер
|
Семенов
|
| учитель
|
Сидоров
| 19 000,00р.
| директор
|
Пример №8
Сохранение результата в новой таблице -INTO
SELECT [Введите ФИО сотрудника] AS Сотрудник, [Введите должность] AS Должность, [Введите зарплату] AS Зарплата INTO Таблица;
Запрос8
|
Сотрудник
| Должность
| Зарплата
|
|
|
|
Пример №9
Использованиеnul
Таблица7
|
Код
| Фамилия
| Имя
| Отчество
| Подчиненные
|
| Пронин
| Виктор
| Иванович
|
|
| Разин
| Виталий
| Георгиевич
| Шолохов В.А.
|
| Степной
| Алексей
| Петрович
|
|
| Похомов
| Андрей
| Сергеевич
| Дядько В.П.
|
SELECT Таблица1.Код, Таблица7.Фамилия, Таблица7.Имя, Таблица7.Отчество, Таблица7.Подчиненные
FROM Таблица7
WHERE (((Таблица7!Подчиненные)<>"nil"));
Запрос9
|
Код
| Фамилия
| Имя
| Отчество
| Подчиненные
|
| Разин
| Виталий
| Георгиевич
| Шолохов В.А.
|
| Похомов
| Андрей
| Сергеевич
| Дядько В.П.
|
Пример №10
Использование команд - INNER JOIN и GROUP BY
Таблица8
|
Код продукта
| Наименование
| Цена
| Категория
|
| карандаш 1
| 30,00р.
|
|
| карандаш 2
| 150,00р.
|
|
| карандаш 3
| 7,00р.
|
|
| ручка 1
| 5,00р.
|
|
| ручка 2
| 8,00р.
|
|
| ручка 3
| 2,00р.
|
|
| карандаш 4
| 170,00р.
|
|
SELECT Таблица8.Наименование, Таблица8.Цена, Таблица8.Категория, [Выборка максимального].[Max-Цена], [Выборка минимального].[Min-Цена]
FROM (Таблица8 INNER JOIN [Выборка максимального] ON Таблица8.Категория=[Выборка максимального].Категория) INNER JOIN [Выборка минимального] ON Таблица1.Категория=[Выборка минимального].Категория
GROUP BY Таблица8.Наименование, Таблица8.Цена, Таблица8.Категория, [Выборка максимального].[Max-Цена], [Выборка минимального].[Min-Цена], [Выборка максимального].Категория, [Выборка минимального].Категория;
Запрос10
|
Наименование
| Цена
| Категория
| Max-Цена
| Min-Цена
|
карандаш 1
| 30,00р.
|
| 170,00р.
| 7,00р.
|
карандаш 2
| 150,00р.
|
| 170,00р.
| 7,00р.
|
карандаш 3
| 7,00р.
|
| 170,00р.
| 7,00р.
|
карандаш 4
| 170,00р.
|
| 170,00р.
| 7,00р.
|
ручка 1
| 5,00р.
|
| 8,00р.
| 2,00р.
|
ручка 2
| 8,00р.
|
| 8,00р.
| 2,00р.
|
ручка 3
| 2,00р.
|
| 8,00р.
| 2,00р.
|
Пример №11
Использование команды - GROUP BY
Таблица9
|
Поставщик
| Город
|
ГиК
| Тамбов
|
ГОК
| Железногорск
|
Металлторг
| Рыльск
|
МЭБИК
| Железногорск
|
Мясторг
| Курск
|
Рыбторг
| Курск
|
Рыльский ЛВЗ
| Рыльск
|
Запрос11
|
Город
|
Железногорск
|
Курск
|
Рыльск
|
Тамбов
|
SELECT Таблица9.Город
FROM Таблица9
GROUP BY Таблица9.Город;
Пример №12
Использование команды - Last
Таблица10
|
Номер заказа
| Наименование
| Цена
| Количество
| Дата
|
| Карандаш
| 15,00р.
|
| 08.08.2007
|
| Ручка
| 20,00р.
|
| 09.09.2007
|
| Пенал
| 35,00р.
|
| 11.12.2007
|
| Кисть
| 13,00р.
|
| 12.03.2008
|
| Краски
| 11,00р.
|
| 10.02.2008
|
| Линейка
| 3,00р.
|
| 11.01.2008
|
SELECT Last(Таблица10!Цена*Таблица10!Количество) AS Сумма
FROM Таблица10;
Пример №13
Использование команды - ORDER BY
Таблица11
|
Номер заказа
| Фамилия
|
| Стариков К.Г.
|
| Хомченко В.А.
|
| Новиков А.П.
|
Запрос13
|
Номер заказа
| Фамилия
|
| Стариков К.Г.
|
| Хомченко В.А.
|
| Новиков А.П.
|
SELECT Таблица11.[Номер заказа], Таблица11.Фамилия
FROM Таблица11
ORDER BY Таблица11.[Номер заказа];
Пример №14
Использование команд - GROUP BY и Sum
Таблица12
|
Код
| Номер продукта
| Количество
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Запрос14
|
Номер продукта
| Sum-Количество
|
|
|
|
|
|
|
SELECT Таблица12.[Номер продукта], Sum(Таблица1.Количество) AS [Sum-Количество]
FROM Таблица12
GROUP BY Таблица12.[Номер продукта];
Пример №15
Использование условий- Between и And
Таблица13
|
Код
| Покупатель
| Дата покупки
|
| Пронский В.Г.
| 01.01.1996
|
| Шариков А.П.
| 06.01.1997
|
| Кнопов С.Н.
| 08.01.1997
|
| Стариков С.Г.
| 09.02.1997
|
Запрос15
|
Покупатель
| Дата покупки
|
Шариков А.П.
| 06.01.1997
|
Кнопов С.Н.
| 08.01.1997
|
SELECT Таблица13.Покупатель, Таблица13.[Дата покупки]
FROM Таблица13
WHERE (((Таблица13.[Дата покупки]) Between #1/1/1997# And #1/31/1997#));