Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5 семестр / sql / ФКолВоСпектаклейРежиссера

.sql
Скачиваний:
2
Добавлен:
03.06.2024
Размер:
1.01 Кб
Скачать
DELIMITER //
CREATE FUNCTION КоличествоСпектаклейРежиссера(РежиссерИмя VARCHAR(45))
RETURNS INT
DETERMINISTIC
BEGIN
DECLARE КоличествоСпектаклей INT DEFAULT 0;
DECLARE НазваниеСпектакля VARCHAR(45);

DECLARE cur CURSOR FOR
SELECT Название FROM Спектакли WHERE Режиссер = РежиссерИмя;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET @finished = 1;

OPEN cur;
read_loop: LOOP
FETCH cur INTO НазваниеСпектакля;
IF @finished = 1 THEN
LEAVE read_loop;
END IF;
SET КоличествоСпектаклей = КоличествоСпектаклей + 1;
END LOOP;
CLOSE cur;

RETURN КоличествоСпектаклей;
END //
DELIMITER ;
SELECT КоличествоСпектаклейРежиссера('Алексей Иванов') AS 'Количество спектаклей';