r/>
CREATE PROCEDURE pr_MinAvrMaxSum_КолічествоЧасов
@ ім'я_стовпця VARCHAR (20),
@ МІНІМУМ INT OUTPUT,
@ СЕРЕДНЯ INT OUTPUT,
@ МАКСИМУМ INT OUTPUT,
@ сумарно INT OUTPUT
IF (@ ім'я_стовпця = 'КолічествоЧасов')
SELECT @ МІНІМУМ = MIN (КолічествоЧасов), @ СЕРЕДНЯ = AVG (КолічествоЧасов), @ МАКСИМУМ = MAX (КолічествоЧасов), @ сумарно = SUM (КолічествоЧасов)
FROM ШтатноеРаспісаніе
IF (NOT @ ім'я_стовпця LIKE 'КолічествоЧасов')
SELECT @ МІНІМУМ = 0, @ СЕРЕДНЯ = 0, @ МАКСИМУМ = 0, @ сумарно = 0 @ MIN INT, @ MAX INT, @ AVG INT, @ SUM INT, @ IMYA_ST VARCHAR (20) @ IMYA_ST = 'КоличествоЧасов'pr_MinAvrMaxSum_КоличествоЧасов @ IMYA_ST, @ MIN OUTPUT, @ AVG OUTPUT, @ MAX OUTPUT, @ SUM OUTPUT @ MIN [МІН], @ AVG [Середня], @ MAX [МАКС], @ SUM [СУМ] p>
GO
Результати роботи процедури представлені на малюнку 6.3
В
Малюнок 6.3. Результати роботи процедури. br/>
Створимо збережену процедуру, яка з конкретної таблиці відбирає рядки за умовою, що накладається на значення конкретних двох стовпців. Ця процедура буде мати два вхідних параметра, які задають значення для відбору даних по кожному з цих стовпців. При цьому значення NULL буде трактуватися як відсутність будь-якого критерію відбору рядків з даного колонки (наприклад, якщо обидва параметри будуть мати значення NULL, то будуть вибрані всі рядки таблиці). p align="justify"> Код даної процедури представлений нижче:
CREATE PROCEDURE pr_Вибор
@ условіе1 INT,
@ Условіе2 INT (@ условіе1 IS NULL AND @ Условіе2 IS NOT NULL) *
FROM Посада
WHERE КодДолжності = @ Условіе2
ELSE IF (@ Условіе2 IS NULL AND @ условіе1 IS NOT NULL) * ДолжностьОклад = @ Условіе1IF (@ условіе1 IS NULL AND @ Условіе2 IS NULL) * ДолжностьIF (@ условіе1 IS NOT NULL AND @ Условіе2 IS NOT NULL) *
FROM Посада
WHERE Оклад = @ условіе1 AND КодДолжності = @ Условіе2
GO @ усл1 INT, @ усл2 INT @ усл2 = 1pr_Вибор @ усл1, NULL @ усл1 [1 умова], @ усл2 [2 умова]
GO
Результати роботи процедури представлені на малюнку 6.4
В
Малюнок 6.4. Результати роботи процедури. br/>
ВИСНОВОК
база дані erwin скрипт процедура
У ході виконання роботи були закріплені знання про використанні команд мови Transact/SQL і ERwin. Нами були Створена, заповнені даним...