Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Перекрестные запросы. Запросы на обновление




Запросы на обновление

При необходимости выполнения одинаковых замен воспользуйтесь запросом на обновление. Сначала создайте запрос выбора и введите критерии для отбора изменяемых записей. Только в том случае, если результат запроса отвечает заданным требованиям, следует преобразовать его в запрос на обновление. Для этого выберите Запрос/Обновление. При этом будут выключены строки “Вывод на экран и “Сортировка” в бланке запроса. Обе строки не нужны для запроса на обновления. Вместо них включается новая строка “Обновление”. В эту строку следует ввести новые выражения для заменяемых записей. Обратите внимание, что тип данных выражения должен совпадать с типом данных поля исходной таблицы. Замена выполняется аналогично запросу - удаления, сначала выдается предупреждение, что имеется некоторое количество записей, удовлетворяющих условию отбора, при дальнейшем выборе кнопки ОК обновление будет выполнено, при выборе отмены, выполнение запроса будет прекращено.

Инструкция UPDATE

Назначение: создание запроса на обновление записей, который изменяет значение полей указанной таблицы на основе заданного условия отбора.

Пример.

Увеличить на 10 процентов цену на все товары поставщика, имеющего код 8, поставки которых еще не прекращены.

UPDATE Товары SET Цена = Цена * 1.1 WHERE КодПоставщика = 8

AND ПоставкиПрекращены = No.

Такие запросы предназначены для отображения данных итоговых запросов, когда данные сгруппированы по нескольким полям.

Представьте себе таблицу товаров, которая содержит три поля данных: “ Тип ”, “ Поставщик ” и “ Цена ”. Для каждой категории товаров требуется определить суммы цен товаров с указанием поставщика.

Поместите в окно конструктора запроса таблицу “Товары”. Затем включите строку “Групповая операция”, выбрав Вид/Групповые операции. После этого отбуксируйте поле данных “Тип” в бланк запроса. Для этого поля выберите из списка значение “Группировка”. Теперь во втором столбце бланка запроса выберите имя поля “Поставщик”. Для этого столбца также выберите значение “Группировка”. Последним в бланк запроса отбуксируйте поле “Цена”. Для этого поля выберите функцию “Sum”.

При выполнении запроса его результат отображается в режиме таблицы, в первом столбце которой будут все типы товаров, во втором – для каждого типа будут приведены номера поставщиков, а в последнем столбце – суммы цен товара данного типа и данного поставщика.

Теперь необходимо итоговый запрос превратить в перекрестный запрос. Для этого из меню выберите команду Запрос/ Перекрестный.

Выбор данной команды приводит к замене в бланке запроса строки “ Вывод на экран ” на новую строку “ Перекрестная таблица ”. Все остальные параметры остаются без изменения. Поле “ Тип ” исходной таблицы будет использовано в качестве заголовка строк. Поэтому из поля списка “ Перекрестная таблица ” выберите элемент “ Заголовок строк ”. Для столбца “ Поставщик ” выберите из списка “ Перекрестная таблица ” элемент “ Заголовок столбцов ”.

Инструкция TRANSFORM

Назначение: создание перекрестного запроса (запрос, возвращающий данные в виде электронной таблицы, используя указанные поля как заголовки строк и столбцов, и способный возвращать итоговые данные). Перекрестный запрос позволяет просматривать данные в более компактной форме, чем при работе с запросом на выборку.

Пример.

Создать перекрестный запрос, показывающий распределение продаж по месяцам указанного пользователем года. Месяцы должны определять заголовки столбцов слева направо, а марка товаров – заголовки строк сверху вниз.

PARAMETERS [Год продажи?] LONG;

TRANSFORM

Sum (Заказано.Количество * (Заказано.Цена – (Заказано.Скидка / 100) * Заказано.Цена)) AS Продажи

SELECT Марка

FROM Заказы INNER JOIN

(Товары INNER JOIN Заказано ON Товары.КодТовара = Заказано.КодТовара) ON Заказы.КодЗаказа = Заказано.КодЗаказа

WHERE DatePart(“yyyy”, ДатаРазмещения) = [ Год продажи?]

GROUP BY Марка

ORDER BY Марка

PIVOT DatePart(“m”, ДатаРазмещения);

В этом примере перед инструкцией TRANSFORM стоит оператор PARAMETERS, который запрашивает у пользователя значение переменной «Год продажи?». Это позволяет построить запрос с параметром.




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 364; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.014 сек.