From 17955a49721a9ea60022d16ed9952a1295f08d6a Mon Sep 17 00:00:00 2001 From: RomanSteinberg <romanofficial@yandex.ru> Date: Sat, 30 Aug 2014 12:39:23 +0400 Subject: [PATCH] add: isAuthor in GetTeachersForDiscipline --- db/StoredProcedures.sql | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/db/StoredProcedures.sql b/db/StoredProcedures.sql index 4f5c65111..333850005 100644 --- a/db/StoredProcedures.sql +++ b/db/StoredProcedures.sql @@ -1124,6 +1124,22 @@ BEGIN WHERE disciplines.ID = DiscID; END // +DROP FUNCTION IF EXISTS isAuthorOfDiscipline// +CREATE FUNCTION `isAuthorOfDiscipline`( `DisciplineID` INT, + `TeacherID` INT + ) RETURNS int(11) + NO SQL +BEGIN + DECLARE checker INT; + SELECT disciplines.AuthorID + INTO checker + FROM `disciplines` + WHERE disciplines.ID = DisciplineID + LIMIT 1; + + RETURN (checker IS NOT NULL AND checker = TeacherID); + +END // DROP PROCEDURE IF EXISTS GetTeachersForDiscipline// CREATE PROCEDURE `GetTeachersForDiscipline`(IN `DiscID` INT) @@ -1140,7 +1156,8 @@ BEGIN departments.Name AS 'DepName', faculties.ID AS 'FacultyID', faculties.Name AS 'FacultyName', - faculties.Abbr AS 'FacultyAbbr' + faculties.Abbr AS 'FacultyAbbr', + isAuthorOfDiscipline(DiscID, teachers.ID) AS 'isAuthor' FROM `disciplines_teachers` INNER JOIN `teachers` ON teachers.ID = disciplines_teachers.TeacherID INNER JOIN `departments` ON departments.ID = teachers.DepartmentID -- GitLab