SQLize
Online
/
PHPize Online
/
SQLtest Online
A
A
A
Share
Donate
Blog
Popular
Donate
A
A
A
Share
Blog
Popular
SQLize.online is a free online SQL environment for quickly running, experimenting with and sharing code.
You can run your SQL code on top of the most popular RDBMS including MySQL, MariaDB, SQLite, PostgreSQL, Oracle and Microsoft SQL Server.
SQL code:
Upload
Copy
Format
Clear
DROP TABLE IF EXISTS `Справка`; CREATE TABLE `Справка` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Слк` CHAR (4) NOT NULL , `Код` CHAR (4) NOT NULL , `Название` VARCHAR (50) NOT NULL , CONSTRAINT `Ун\СПР` UNIQUE (`Код`,`Слк`) ); INSERT INTO `Справка` VALUES (DEFAULT,'ДОЛ','про','профессор'), (DEFAULT,'ДОЛ','доц','доцент'), (DEFAULT,'ВОСН', 'эл', 'электронный'), (DEFAULT,'ВОСН', 'пис', 'письменный'), (DEFAULT,'КАФ', 'мфк', 'Медицинской физики с курсом информатики'), (DEFAULT,'КАФ', 'пип', 'Педагогики и психологии'), (DEFAULT,'СПЕЦ', 'ивт', 'Информатика и вычислительная техника'), (DEFAULT,'СПЕЦ', 'гд', 'Гостиничное дело'), (DEFAULT,'ВСДЧ', 'эл', 'электронный'), (DEFAULT,'ВСДЧ', 'пис', 'письменный'); SELECT '`Справка` Table Content:' FROM `Справка` WHERE 1=0; SELECT * FROM `Справка`; DROP TABLE IF EXISTS `Сотрудник%ПЕРС`; CREATE TABLE `Сотрудник%ПЕРС` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\СПР` INT NOT NULL , `Код` CHAR (10) NOT NULL UNIQUE , `Паспорт` CHAR (10) NOT NULL UNIQUE , `ФИО` VARCHAR (50) NOT NULL ); INSERT INTO `Сотрудник%ПЕРС` VALUES (DEFAULT,(SELECT `Ид` FROM `Справка` WHERE `Слк` = "ДОЛ" AND `Код` = "доц"),"001-П", "345678", "Петров А. А."), (DEFAULT,(SELECT `Ид` FROM `Справка` WHERE `Слк` = "ДОЛ" AND `Код` = "доц"),"002-П", "456789", "Боширов Р. Р."), (DEFAULT,(SELECT `Ид` FROM `Справка` WHERE `Слк` = "ДОЛ" AND `Код` = "про"),"099-В", "567890", "Исаев М. М."); SELECT "`Сотрудник%ПЕРС` Table Content:" FROM `Сотрудник%ПЕРС` WHERE 1=0; SELECT * FROM `Сотрудник%ПЕРС`; DROP TABLE IF EXISTS `Группа\СПЕЦ`; CREATE TABLE `Группа\СПЕЦ` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\СПР` INT NOT NULL , `Номер группы студента` INT (10) NOT NULL , `Курс группы` INT (10) NOT NULL , CONSTRAINT `Ун\ГР` UNIQUE (`Ид\СПР`, `Номер группы студента`) ); INSERT INTO `Группа\СПЕЦ` VALUES (DEFAULT,(SELECT `Ид` FROM `Справка` WHERE `Слк` = "Спец" AND `Код` = "гд"),"33", "3"), (DEFAULT,(SELECT `Ид` FROM `Справка` WHERE `Слк` = "Спец" AND `Код` = "гд"),"34", "3"), (DEFAULT,(SELECT `Ид` FROM `Справка` WHERE `Слк` = "Спец" AND `Код` = "ивт"),"35", "3"); SELECT "`Группа\СПЕЦ` Table Content:" FROM `Группа\СПЕЦ` WHERE 1=0; SELECT * FROM `Группа\СПЕЦ`; DROP TABLE IF EXISTS `Предмет\СПЕЦ`; CREATE TABLE `Предмет\СПЕЦ` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Код предмета` CHAR (10) NOT NULL , `Название предмета` VARCHAR (70) NOT NULL , `Ид\СПР` INT NOT NULL , CONSTRAINT `Ун\ПРЕД` UNIQUE (`Ид\СПР`, `Код предмета`) ); INSERT INTO `Предмет\СПЕЦ` VALUES (DEFAULT,"физ", "физика",(SELECT `Ид` FROM `Справка` WHERE `Слк` = "Спец" AND `Код` = "гд")), (DEFAULT,"физ", "физика",(SELECT `Ид` FROM `Справка` WHERE `Слк` = "Спец" AND `Код` = "ивт")), (DEFAULT,"ооп", "объектно-ориентированное программирование", (SELECT `Ид` FROM `Справка` WHERE `Слк` = "Спец" AND `Код` = "ивт")), (DEFAULT,"пикпо", "проектирование и конструирование программного обеспечения", (SELECT `Ид` FROM `Справка` WHERE `Слк` = "Спец" AND `Код` = "ивт")); SELECT "`Предмет\СПЕЦ` Table Content:" FROM `Предмет\СПЕЦ` WHERE 1=0; SELECT * FROM `Предмет\СПЕЦ`; DROP TABLE IF EXISTS `Преподаватель:СОТ`; CREATE TABLE `Преподаватель:СОТ` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\СОТ` CHAR (10) NOT NULL UNIQUE , `Ид\СПР` CHAR (10) NOT NULL ); INSERT INTO `Преподаватель:СОТ` VALUES (DEFAULT,(SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-П"),(SELECT `Ид` FROM `Справка` WHERE `Слк` = "КАФ" AND `Код` = "мфк")), (DEFAULT,(SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "002-П"),(SELECT `Ид` FROM `Справка` WHERE `Слк` = "КАФ" AND `Код` = "пип")); SELECT "`Преподаватель:СОТ` Table Content:" FROM `Преподаватель:СОТ` WHERE 1=0; SELECT * FROM `Преподаватель:СОТ`; DROP TABLE IF EXISTS `Сотрудник деканата:СОТ`; CREATE TABLE `Сотрудник деканата:СОТ` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\СОТ` INT NOT NULL UNIQUE ); INSERT INTO `Сотрудник деканата:СОТ` VALUES (DEFAULT,(SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-П")), (DEFAULT,(SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "002-П")); SELECT "`Сотрудник деканата:СОТ` Table Content:" FROM `Сотрудник деканата:СОТ` WHERE 1=0; SELECT * FROM `Сотрудник деканата:СОТ`; DROP TABLE IF EXISTS `Руководитель:СОТ`; CREATE TABLE `Руководитель:СОТ` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\СОТ` INT NOT NULL UNIQUE ); INSERT INTO `Руководитель:СОТ` VALUES (DEFAULT,(SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "099-В")); SELECT "`Руководитель:СОТ` Table Content:" FROM `Руководитель:СОТ` WHERE 1=0; SELECT * FROM `Руководитель:СОТ`; DROP TABLE IF EXISTS `Студент%ПЕРС`; CREATE TABLE `Студент%ПЕРС` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Код` CHAR (10) NOT NULL UNIQUE , `Паспорт` CHAR (10) NOT NULL UNIQUE , `ФИО` VARCHAR (50) NOT NULL , `Ид\ГР` INT NOT NULL ); INSERT INTO `Студент%ПЕРС` VALUES (DEFAULT,"001-С", "666666", "Сидоров А. А.",(SELECT `Ид` FROM `Группа\СПЕЦ` WHERE `Номер группы студента` = "33" AND `Ид\СПР` = 8)), (DEFAULT,"002-С", "777777", "Петров Р. Р.", (SELECT `Ид` FROM `Группа\СПЕЦ` WHERE `Номер группы студента` = "33" AND `Ид\СПР` = 8)), (DEFAULT,"099-С", "999999", "Мусалиев М. М.",(SELECT `Ид` FROM `Группа\СПЕЦ` WHERE `Номер группы студента` = "33" AND `Ид\СПР` = 8)); SELECT "`Студент%ПЕРС` Table Content:" FROM `Студент%ПЕРС` WHERE 1=0; SELECT * FROM `Студент%ПЕРС`; DROP TABLE IF EXISTS `Приказ о продлении сессии`; CREATE TABLE `Приказ о продлении сессии` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Регномер приказа` CHAR (10) NOT NULL UNIQUE , `Дата приказа` DATE NOT NULL , `Содержание основания` VARCHAR (50) NOT NULL , `Ид\СПР` INT NOT NULL , `Ид\СОТД` INT NOT NULL , `Ид\РУК` INT NOT NULL ); INSERT INTO `Приказ о продлении сессии` VALUES (DEFAULT,"555-Б", "1999.02.12", "В связи с болезнью",(SELECT `Ид` FROM `Справка` WHERE `Слк` = "ВОСН" AND `Код` = "пис"),(SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-П"),(SELECT `Ид` FROM `Руководитель:СОТ` WHERE `Ид\СОТ` = "3")), (DEFAULT,"077-СО", "1999.02.12", "В связи с семейными обстоятельствами",(SELECT `Ид` FROM `Справка` WHERE `Слк` = "ВОСН" AND `Код` = "пис"),(SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-П"),(SELECT `Ид` FROM `Руководитель:СОТ` WHERE `Ид\СОТ` = "3")); SELECT "`Приказ о продлении сессии` Table Content:" FROM `Приказ о продлении сессии` WHERE 1=0; SELECT * FROM `Приказ о продлении сессии`; DROP TABLE IF EXISTS `Корпус`; CREATE TABLE `Корпус` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Номер корпуса` int (10) NOT NULL UNIQUE , `Адрес корпуса` VARCHAR (35) NOT NULL UNIQUE ); INSERT INTO `Корпус` VALUES (DEFAULT,3,"ул.Мингажева 162"), (DEFAULT,5,"ул.Мингажева 160"), (DEFAULT,6,"ул.Мингажева 158"); SELECT "`Корпус` Table Content:" FROM `Корпус` WHERE 1=0; SELECT * FROM `Корпус`; DROP TABLE IF EXISTS `Аудитория\КРП`; CREATE TABLE `Аудитория\КРП` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Вместимость аудитории` INT (10) NOT NULL , `Номер аудитории` CHAR (10) NOT NULL , `Ид\КПР` INT NOT NULL , CONSTRAINT `Ун\АУД` UNIQUE (`Ид\КПР`, `Номер аудитории`) ); INSERT INTO `Аудитория\КРП` VALUES (DEFAULT,27,"312Б",(SELECT `Ид` FROM `Корпус` WHERE `Номер корпуса` = 3)), (DEFAULT,100,"117Б",(SELECT `Ид` FROM `Корпус` WHERE `Номер корпуса` = 6)), (DEFAULT,15,"110Б",(SELECT `Ид` FROM `Корпус` WHERE `Номер корпуса` = 6)); SELECT "`Аудитория\КРП` Table Content:" FROM `Аудитория\КРП` WHERE 1=0; SELECT * FROM `Аудитория\КРП`; DROP TABLE IF EXISTS `Досдача`; CREATE TABLE `Досдача` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Регномер досдачи` CHAR (10) NOT NULL UNIQUE , `Дата досдачи` DATE NOT NULL , `Ид\СОТД` INT NOT NULL , `Ид\ПРЕД` INT NOT NULL ); INSERT INTO `Досдача` VALUES (DEFAULT,"1-323о","2007.05.16",(SELECT `Ид` FROM `Сотрудник деканата:СОТ` WHERE `Ид\СОТ` = 1),(SELECT `Ид` FROM `Предмет\СПЕЦ` WHERE `Код предмета` = "ооп" AND `Ид\СПР` = 7)), (DEFAULT,"1-322о","2007.05.16",(SELECT `Ид` FROM `Сотрудник деканата:СОТ` WHERE `Ид\СОТ` = 1),(SELECT `Ид` FROM `Предмет\СПЕЦ` WHERE `Код предмета` = "ооп" AND `Ид\СПР` = 7)); SELECT "`Досдача` Table Content:" FROM `Досдача` WHERE 1=0; SELECT * FROM `Досдача`; DROP TABLE IF EXISTS `Результат:ДСДЧ*СТУД`; CREATE TABLE `Результат:ДСДЧ*СТУД` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\ДСДЧ` INT NOT NULL , `Ид\СТУД` INT NOT NULL , `Оценка пересдачи` INT (1) NOT NULL , CONSTRAINT `Ун\РЕЗ` UNIQUE (`Ид\ДСДЧ`, `Ид\СТУД`) ); INSERT INTO `Результат:ДСДЧ*СТУД` VALUES (DEFAULT,(SELECT `Ид` FROM `Досдача` WHERE `Регномер досдачи` = "1-322о"),(SELECT `Ид` FROM `Студент%ПЕРС` WHERE `Код` = "001-С"),3), (DEFAULT,(SELECT `Ид` FROM `Досдача` WHERE `Регномер досдачи` = "1-322о"),(SELECT `Ид` FROM `Студент%ПЕРС` WHERE `Код` = "002-С"),2); SELECT "`Результат:ДСДЧ*СТУД` Table Content:" FROM `Результат:ДСДЧ*СТУД` WHERE 1=0; SELECT * FROM `Результат:ДСДЧ*СТУД`; DROP TABLE IF EXISTS `Продление:ППС*СТУД`; CREATE TABLE `Продление:ППС*СТУД` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\ППС` INT NOT NULL , `Ид\СТУД` INT NOT NULL , `Сроки продления` DATE NOT NULL , CONSTRAINT `Ун\ПРОД` UNIQUE (`Ид\ППС`, `Ид\СТУД`) ); INSERT INTO `Продление:ППС*СТУД` VALUES (DEFAULT,(SELECT `Ид` FROM `Приказ о продлении сессии` WHERE `Регномер приказа` = "077-СО"),(SELECT `Ид` FROM `Студент%ПЕРС` WHERE `Код` = "001-С"),"2007.05.16"), (DEFAULT,(SELECT `Ид` FROM `Приказ о продлении сессии` WHERE `Регномер приказа` = "555-Б"),(SELECT `Ид` FROM `Студент%ПЕРС` WHERE `Код` = "002-С"),"2007.05.16"); SELECT "`Продление:ППС*СТУД` Table Content:" FROM `Продление:ППС*СТУД` WHERE 1=0; SELECT * FROM `Продление:ППС*СТУД`; DROP TABLE IF EXISTS `Преподаватель на сдаче:ПРЕП*ДСДЧ`; CREATE TABLE `Преподаватель на сдаче:ПРЕП*ДСДЧ` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\ДСДЧ` INT NOT NULL , `Код\ПРЕ` CHAR (10) NOT NULL , CONSTRAINT `Ун\ПРСД` UNIQUE (`Ид\ДСДЧ`, `Код\ПРЕ`) ); INSERT INTO `Преподаватель на сдаче:ПРЕП*ДСДЧ` VALUES (DEFAULT,(SELECT `Ид` FROM `Досдача` WHERE `Регномер досдачи` = "1-322о"),(SELECT `Ид` FROM `Преподаватель:СОТ` WHERE `Ид\СОТ` = 1)), (DEFAULT,(SELECT `Ид` FROM `Досдача` WHERE `Регномер досдачи` = "1-322о"),(SELECT `Ид` FROM `Преподаватель:СОТ` WHERE `Ид\СОТ` = 2)); SELECT "`Преподаватель на сдаче:ПРЕП*ДСДЧ` Table Content:" FROM `Преподаватель на сдаче:ПРЕП*ДСДЧ` WHERE 1=0; SELECT * FROM `Преподаватель на сдаче:ПРЕП*ДСДЧ`; DROP TABLE IF EXISTS `Сдача группы`; CREATE TABLE `Сдача группы` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Регномер ведомости группы` CHAR (10) NOT NULL UNIQUE , `Дата сдачи` DATE NOT NULL , `Ид\ПРЕ` INT NOT NULL , `Ид\ПРЕД` INT NOT NULL , `Ид\СПР` INT NOT NULL , `Ид\АУД` INT NOT NULL , `Ид\ГР` INT NOT NULL ); INSERT INTO `Сдача группы` VALUES (DEFAULT,"323","2007.05.16",(SELECT `Ид` FROM `Преподаватель:СОТ` WHERE `Ид\СОТ` = 1),(SELECT `Ид` FROM `Предмет\СПЕЦ` WHERE `Код предмета` = "ооп" AND `Ид\СПР` = 7),(SELECT `Ид` FROM `Справка` WHERE `Слк` = "ВСДЧ" AND `Код` = "пис"),(SELECT `Ид` FROM `Аудитория\КРП` WHERE `Номер аудитории` = "117Б" AND `Ид\КПР` = 3),(SELECT `Ид` FROM `Группа\СПЕЦ` WHERE `Ид\СПР` = 8 AND `Номер группы студента` = 33)); SELECT "`Сдача группы` Table Content:" FROM `Сдача группы` WHERE 1=0; SELECT * FROM `Сдача группы`; DROP TABLE IF EXISTS `Результат:СДЧ*СТУД`; CREATE TABLE `Результат:СДЧ*СТУД` ( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `Ид\СДЧ` CHAR (10) NOT NULL , `Ид\СТУД` CHAR (10) NOT NULL , `Оценка` INT (10) NOT NULL , CONSTRAINT `Ун\РЕЗ` UNIQUE (`Ид\СДЧ`, `Ид\СТУД`) ); INSERT INTO `Результат:СДЧ*СТУД` VALUES (DEFAULT,(SELECT `Ид` FROM `Сдача группы` WHERE `Регномер ведомости группы` = "323"),(SELECT `Ид` FROM `Студент%ПЕРС` WHERE `Код` = "001-С"),5), (DEFAULT,"323","002-С",5), (DEFAULT,"323","099-С",4); SELECT "`Результат:СДЧ*СТУД` Table Content:" FROM `Результат:СДЧ*СТУД` WHERE 1=0; SELECT * FROM `Результат:СДЧ*СТУД`; DROP VIEW IF EXISTS `вирт_Досдача`; CREATE VIEW `вирт_Досдача` AS SELECT `ДСДЧ`.`Регномер досдачи` AS `Регистрационный номер досдачи`, `ДСДЧ`.`Дата досдачи` AS `Дата проведения сдачи`, `ПРЕД`.`Код предмета` AS `Код предмета на досдаче`, `ПРЕД`.`Название предмета` AS `Название предмета на досдаче`, `СОТ`.`Код` AS `Код сотрудника деканата`, `СОТ`.`ФИО` AS `ФИО сотрудника деканата`, `ДСДЧ`.`Ид` AS `Ид\ДСДЧ` FROM `Досдача` AS `ДСДЧ` INNER JOIN `Предмет\СПЕЦ` AS `ПРЕД` ON `ДСДЧ`.`Ид\ПРЕД` = `ПРЕД`.`Ид` INNER JOIN `Справка` AS `СПР` ON `ПРЕД`.`Ид\СПР` = `СПР`.`Ид` INNER JOIN `Сотрудник деканата:СОТ` AS `СОТД` ON `ДСДЧ`.`Ид\СОТД` = `СОТД`.`Ид` INNER JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `СОТД`.`Ид\СОТ` = `СОТ`.`Ид` INNER JOIN `Справка` AS `СПР2` ON `СПР2`.`Ид` = `СОТ`.`Ид\СПР`; SELECT "`вирт_Досдача` Table Content:" FROM `вирт_Досдача` WHERE 1=0; SELECT * FROM `вирт_Досдача`; DROP PROCEDURE IF EXISTS `проц_Студент на досдаче`; CREATE PROCEDURE `проц_Студент на досдаче` (IN `@Ид\ДСДЧ` INT) SELECT `СТУД`.`Код` AS `Код студента`, `СТУД`.`ФИО` AS `ФИО студента`, `ГР`.`Номер группы студента` AS `Группа студента`, `ГР`.`Курс группы` AS `Курс`, `РЕЗ`.`Оценка пересдачи` AS `Оценка` FROM `Результат:ДСДЧ*СТУД` AS `РЕЗ` LEFT JOIN `Студент%ПЕРС` AS `СТУД` ON `СТУД`.`Ид` = `РЕЗ`.`Ид\СТУД` LEFT JOIN `Группа\СПЕЦ` AS `ГР` ON `СТУД`.`Ид\ГР` = `ГР`.`Ид` LEFT JOIN `Справка` AS `СПР` ON `ГР`.`Ид\СПР` = `СПР`.`Ид` LEFT JOIN `Досдача` AS `ДСДЧ` ON `ДСДЧ`.`Ид` = `РЕЗ`.`Ид\ДСДЧ` WHERE `РЕЗ`.`Ид` = `@Ид\ДСДЧ`; CALL `проц_Студент на досдаче` (); CALL `проц_Студент на досдаче` (2); DROP PROCEDURE IF EXISTS `проц_Преподаватель на сдаче`; CREATE PROCEDURE `проц_Преподаватель на сдаче` (IN `@Ид\ДСДЧ` INT) SELECT `СОТ`.`Код` AS `Код преподавателя`, `СОТ`.`ФИО` AS `ФИО преподавателя`, `СПР1`.`Код` AS `Код кафедры`, `СПР1`.`Название` AS `Название кафедры`, `СПР2`.`Код` AS `Код должности`, `СПР2`.`Название` AS `Название должности` FROM `Преподаватель на сдаче:ПРЕП*ДСДЧ` AS `ПРСД` LEFT JOIN `Преподаватель:СОТ` AS `ПРЕ` ON `ПРСД`.`Код\ПРЕ` = `ПРЕ`.`Ид` LEFT JOIN `Справка` AS `СПР1` ON `ПРЕ`.`Ид\СПР` = `СПР1`.`Ид` LEFT JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `ПРЕ`.`Ид\СОТ` = `СОТ`.`Ид` LEFT JOIN `Справка` AS `СПР2` ON `СОТ`.`Ид\СПР` = `СПР2`.`Ид` WHERE `ПРСД`.`Ид` = `@Ид\ДСДЧ`; CALL `проц_Преподаватель на сдаче` (1); DROP VIEW IF EXISTS `вирт_Преподаватель%Досдача`; CREATE VIEW `вирт_Преподаватель%Досдача` AS SELECT `ДСДЧ`.`Регномер досдачи` AS `Регистрационный номер досдачи`, `ДСДЧ`.`Дата досдачи` AS `Дата проведения досдачи`, `ПРЕД`.`Код предмета` AS `Код предмета на досдаче`, `ПРЕД`.`Название предмета` AS `Название предмета на досдаче`, `СОТ`.`Код` AS `Код сотрудника деканата`, `СОТ`.`ФИО` AS `ФИО сотрудника деканата`, `СОТ1`.`Код` AS `Код преподавателя`, `СОТ1`.`ФИО` AS `ФИО преподавателя`, `СПР1`.`Код` AS `Код кафедры`, `СПР1`.`Название` AS `Название кафедры`, `СПР2`.`Код` AS `Код должности`, `СПР2`.`Название` AS `Название должности` FROM `Досдача` AS `ДСДЧ` INNER JOIN `Предмет\СПЕЦ` AS `ПРЕД` ON `ПРЕД`.`Ид` = `ДСДЧ`.`Ид\ПРЕД` INNER JOIN `Справка` AS `СПР` ON `СПР`.`Ид` = `ПРЕД`.`Ид\СПР` INNER JOIN `Сотрудник деканата:СОТ` AS `СОТД` ON `СОТД`.`Ид` = `ДСДЧ`.`Ид\СОТД` INNER JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `СОТ`.`Ид` = `СОТД`.`Ид\СОТ` INNER JOIN `Справка` AS `СПР_` ON `СПР_`.`Ид` = `СОТ`.`Ид\СПР` INNER JOIN `Преподаватель на сдаче:ПРЕП*ДСДЧ` AS `ПРСД` ON `ДСДЧ`.`Ид` = `ПРСД`.`Ид\ДСДЧ` INNER JOIN `Преподаватель:СОТ` AS `ПРЕ` ON `ПРСД`.`Код\ПРЕ` = `ПРЕ`.`Ид` INNER JOIN `Справка` AS `СПР1` ON `СПР1`.`Ид` = `ПРЕ`.`Ид\СПР` INNER JOIN `Сотрудник%ПЕРС` AS `СОТ1` ON `СОТ1`.`Ид` = `ПРЕ`.`Ид\СОТ` INNER JOIN `Справка` AS `СПР2` ON `СПР2`.`Ид` = `СОТ1`.`Ид\СПР` ; SELECT "`вирт_Преподаватель%Досдача` Table Content:" FROM `вирт_Преподаватель%Досдача` WHERE 1=0; SELECT * FROM `вирт_Преподаватель%Досдача`; DROP VIEW IF EXISTS `вирт_Студент%Досдача`; CREATE VIEW `вирт_Студент%Досдача` AS SELECT `ДСДЧ`.`Регномер досдачи` AS `Регистрационный номер досдачи`, `ДСДЧ`.`Дата досдачи` AS `Дата проведения досдачи`, `ПРЕД`.`Код предмета` AS `Код предмета на досдаче`, `ПРЕД`.`Название предмета` AS `Название предмета на досдаче`, `СОТ`.`Код` AS `Код сотрудника деканата`, `СОТ`.`ФИО` AS `ФИО сотрудника деканата`, `СТУД`.`Код` AS `Код студента`, `СТУД`.`ФИО` AS `ФИО студента`, `ГР`.`Номер группы студента` AS `Номер группы студента`, `ГР`.`Курс группы` AS `Курс группы студента`, `РЕЗ`.`Оценка пересдачи` AS `Оценка пересдачи по предмету` FROM `Досдача` AS `ДСДЧ` INNER JOIN `Предмет\СПЕЦ` AS `ПРЕД` ON `ПРЕД`.`Ид` = `ДСДЧ`.`Ид\ПРЕД` INNER JOIN `Справка` AS `СПР` ON `СПР`.`Ид` = `ПРЕД`.`Ид\СПР` INNER JOIN `Сотрудник деканата:СОТ` AS `СОТД` ON `СОТД`.`Ид` = `ДСДЧ`.`Ид\СОТД` INNER JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `СОТ`.`Ид` = `СОТД`.`Ид\СОТ` INNER JOIN `Справка` AS `СПР_` ON `СПР_`.`Ид` = `СОТ`.`Ид\СПР` INNER JOIN `Результат:ДСДЧ*СТУД` AS `РЕЗ` ON `ДСДЧ`.`Ид` = `РЕЗ`.`Ид\ДСДЧ` INNER JOIN `Студент%ПЕРС` AS `СТУД` ON `РЕЗ`.`Ид\СТУД` = `СТУД`.`Ид` INNER JOIN `Группа\СПЕЦ` AS `ГР` ON `ГР`.`Ид` = `СТУД`.`Ид\ГР` INNER JOIN `Справка` AS `СПР__` ON `СПР__`.`Ид` = `ГР`.`Ид\СПР` ; SELECT "`вирт_Студент%Досдача` Table Content:" FROM `вирт_Студент%Досдача` WHERE 1=0; SELECT * FROM `вирт_Студент%Досдача`; DROP VIEW IF EXISTS `вирт_Досдача`; CREATE VIEW `вирт_Досдача` AS WITH `Кол_преп` AS( SELECT `ДСДЧ`.`Регномер досдачи` AS `Регномер досдач`, COUNT(*) AS `Регномер сдачи у преп` FROM `Досдача` AS `ДСДЧ` INNER JOIN `Преподаватель на сдаче:ПРЕП*ДСДЧ` AS `ПРСД` ON `ДСДЧ`.`Ид` = `ПРСД`.`Ид\ДСДЧ` INNER JOIN `Преподаватель:СОТ` AS `ПРЕ` ON `ПРСД`.`Код\ПРЕ` = `ПРЕ`.`Ид` INNER JOIN `Справка` AS `СПР1` ON `СПР1`.`Ид` = `ПРЕ`.`Ид\СПР` INNER JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `СОТ`.`Ид` = `ПРЕ`.`Ид\СОТ` INNER JOIN `Справка` AS `СПР2` ON `СПР2`.`Ид` = `СОТ`.`Ид\СПР` GROUP BY `ДСДЧ`.`Регномер досдачи` ), `Кол_студ` AS( SELECT `ДСДЧ`.`Регномер досдачи` AS `Регномер досдач`, COUNT(*) AS `Регномер сдачи у студ` FROM `Досдача` AS `ДСДЧ` INNER JOIN `Результат:ДСДЧ*СТУД` AS `РЕЗ` ON `ДСДЧ`.`Ид` = `РЕЗ`.`Ид\ДСДЧ` INNER JOIN `Студент%ПЕРС` AS `СТУД` ON `РЕЗ`.`Ид\СТУД` = `СТУД`.`Ид` INNER JOIN `Группа\СПЕЦ` AS `ГР` ON `ГР`.`Ид` = `СТУД`.`Ид\ГР` INNER JOIN `Справка` AS `СПР__` ON `СПР__`.`Ид` = `ГР`.`Ид\СПР` GROUP BY `ДСДЧ`.`Регномер досдачи` ) SELECT `ДСДЧ`.`Ид` AS `Ид\ДСДЧ`, `ДСДЧ`.`Регномер досдачи` AS `Регистрационный номер досдачи`, `ДСДЧ`.`Дата досдачи` AS `Дата проведения сдачи`, `ПРЕД`.`Код предмета` AS `Код предмета на досдаче`, `ПРЕД`.`Название предмета` AS `Название предмета на досдаче`, `СОТ`.`Код` AS `Код сотрудника деканата`, `СОТ`.`ФИО` AS `ФИО сотрудника деканата`, `Кол_студ`.`Регномер сдачи у студ` AS `Количество студентов на пересдаче`, `Кол_преп`.`Регномер сдачи у преп` AS `Количество преподавателей на пересдаче` FROM `Досдача` AS `ДСДЧ` LEFT JOIN `Кол_студ` ON `ДСДЧ`.`Регномер досдачи` = `Кол_студ`.`Регномер досдач` LEFT JOIN `Кол_преп` ON `ДСДЧ`.`Регномер досдачи` = `Кол_преп`.`Регномер досдач` INNER JOIN `Предмет\СПЕЦ` AS `ПРЕД` ON `ДСДЧ`.`Ид\ПРЕД` = `ПРЕД`.`Ид` INNER JOIN `Справка` AS `СПР` ON `ПРЕД`.`Ид\СПР` = `СПР`.`Ид` INNER JOIN `Сотрудник деканата:СОТ` AS `СОТД` ON `ДСДЧ`.`Ид\СОТД` = `СОТД`.`Ид` INNER JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `СОТД`.`Ид\СОТ` = `СОТ`.`Ид` INNER JOIN `Справка` AS `СПР2` ON `СПР2`.`Ид` = `СОТ`.`Ид\СПР`; SELECT "`Результат:СДЧ*СТУД` Table Content:" FROM `вирт_Преподаватель%Досдача` WHERE 1=0; SELECT * FROM `вирт_Досдача`;
SQL
Server:
MariaDB 11.4
MariaDB 11.5
MariaDB 10
MariaDB 10 Sakila (ReadOnly)
MySQL 5.7
MySQL 5.7 Sakila (ReadOnly)
MySQL 8.0
MySQL 8.0 Sakila (ReadOnly)
SQLite 3
SQLite 3 Preloaded
PostgreSQL 10 Bookings (ReadOnly)
PostgreSQL 11
PostgreSQL 12
PostgreSQL 13
PostgreSQL 14
PostgreSQL 15
MS SQL Server 2017
MS SQL Server 2019
MS SQL Server 2022
MS SQL Server 2022 AdventureWorks (ReadOnly)
Firebird 4.0
Firebird 4.0 (Employee)
Oracle Database 19c (HR)
Oracle Database 21c
Oracle Database 23c Free
SOQOL
Version
ER Diagram
Preserve result
Stuck with a problem?
Got Error?
Ask ChatGPT!
Result:
Copy
Clear