MS SQL SERVER

Скидка от суммы чека

 

            Есть таблица «Кассовые чеки», которая находится в базе данных «Аптека». Нужно написать процедуру для расчета скидки в зависимости от суммы чека.

Рис. 1. Таблица «Кассовые чеки»

Рис. 1. Таблица «Кассовые чеки»

 

            Запускаем «MS SQL Server 2009 Management Studio Express», соединяемся с сервером, а в обозревателе объектов (стакан слева) переходим  на ветку «Базы данных – Аптека – Таблицы – Кассовые чеки» и открываем через контекстное меню, чтобы была перед глазами.

Рис. 2. Поля и типы таблицы «Кассовые чеки»

 

            Нажимаем кнопку «Создать запрос» на панели кнопок, выполняем его. Процедура запишется на ветку «Хранимые процедуры». В процедуре ставим условие на размер скидок в зависимости от суммы чека, а именно, меньше 500 скидка 5%, более 500 скидка 10 %.

USE Аптека;

GO

CREATE PROCEDURE Raschet_Skidok AS

DECLARE @Skidka NUMERIC(3,1);

UPDATE [Кассовые чеки] SET Скидка =

 (CASE

                        WHEN Сумма<500 THEN 5

                        WHEN Сумма>=500 THEN 10

                        ELSE 0

               END);

            Чтобы выполнить ее надо опять же выполнить запрос ,но уже на выполнение процедуры:

EXECUTE Raschet_Skidok;

            Таким образом ,мы рассчитаем скидки в столбце «Скидки» таблицы «Кассовые чеки» базы «Аптека».

Рис. 3. Рассчитанные скидки в таблице «Кассовые чеки»


Код для бд Фотосалон.mdb
Код для бд Фотосалон.mdb


База 34 DLE сайта для Ручного постинга от 01.01.2010
База 34 DLE сайта для Ручного постинга от 01.01.2010


Бд Контроль исполнения поручений .mdb
Бд Контроль исполнения поручений .mdb