[4sem] add db course files

This commit is contained in:
Andrew Nuark G 2021-05-11 22:08:11 +07:00
parent ea29f4148d
commit 827b74f0b4
13 changed files with 1087 additions and 0 deletions

21
4sem/db/lab11.sql Normal file
View file

@ -0,0 +1,21 @@
DROP FUNCTION IF EXISTS dbo.AverageMark;
DROP FUNCTION IF EXISTS dbo.CreditsList;
GO;
CREATE FUNCTION dbo.AverageMark(@disciplineId int) RETURNS float AS BEGIN;
DECLARE @out float = (SELECT AVG(CAST(Оценка AS FLOAT)) FROM Изучение WHERE Дисциплина = @disciplineId);
RETURN IIF(@out < 2, ROUND(@out, 0), @out);
END;
GO;
CREATE FUNCTION dbo.CreditsList(@groupId int, @semester int) RETURNS table AS RETURN (
SELECT DISTINCT D.[Название], D.[Отчётность] FROM [Дисциплина] AS D
JOIN [Группа] as G on G.ID = @groupId
WHERE D.[Семестр] = @semester AND G.[КодСпециальности] = D.[КодСпециальности]
);
GO;
SELECT dbo.AverageMark(4), dbo.AverageMark(12), dbo.AverageMark(2);
SELECT * FROM dbo.CreditsList(2, 2);
SELECT * FROM dbo.CreditsList(4,1);