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 (100) NOT NULL , CONSTRAINT `УН\СПР` UNIQUE KEY (`Слк`, `Код`)); INSERT INTO `Справка+` VALUES (DEFAULT, "ДОЛ", "101", "Должность руководителя"), (DEFAULT, "ДОЛ", "102", "Должность преподавателя"), (DEFAULT, "ФАК", "2", "Факультет информатики и робототехники"), (DEFAULT, "ДИС", "302", "Базы данных"), (DEFAULT, "НАПР", "401", "Направление"); 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 (50) NOT NULL, CONSTRAINT `УН\КАФ` UNIQUE KEY (`Код`, `Ид\КАФ^СПР`), `Ид\КАФ^СПР` INT NOT NULL REFERENCES `Справка+` (`Ид`)); INSERT INTO `Кафедра\ФАК` SET `Ид` = DEFAULT, `Код` = "001-К", `Название` = "АСУ", `Ид\КАФ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ФАК"); 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 REFERENCES `Справка+` (`Ид`)); INSERT INTO `Сотрудник%ПЕРС` SET `Ид` = DEFAULT, `Код` = "001-ПРЕ", `Паспорт` = "567976", `ФИО` = "Александров Б. К.", `Ид\СОТ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ДОЛ" AND `Код` = "102"); INSERT INTO `Сотрудник%ПЕРС` SET `Ид` = DEFAULT, `Код` = "001-РУК", `Паспорт` = "875426", `ФИО` = "Харитонов С. С.", `Ид\СОТ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ДОЛ" AND `Код` = "101"); SELECT "`Сотрудник%ПЕРС` Table Content:" FROM `Сотрудник%ПЕРС` WHERE 1 = 0; SELECT * FROM `Сотрудник%ПЕРС`; DROP TABLE IF EXISTS `Преподаватель: СОТ`; CREATE TABLE `Преподаватель: СОТ` (`Ид\ПРЕ^СОТ` INT NOT NULL PRIMARY KEY REFERENCES `Сотрудник%ПЕРС` (`Ид`), `Ид\ПРЕ^КАФ` INT NOT NULL REFERENCES `Кафедра\ФАК` (`Ид`)); INSERT INTO `Преподаватель: СОТ` SET `Ид\ПРЕ^СОТ` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-ПРЕ"), `Ид\ПРЕ^КАФ` = (SELECT `Ид` FROM `Кафедра\ФАК` WHERE `Код` = "001-К"); SELECT "`Преподаватель: СОТ` Table Content:" FROM `Преподаватель: СОТ` WHERE 1 = 0; SELECT * FROM `Преподаватель: СОТ`; DROP TABLE IF EXISTS `Руководитель: СОТ`; CREATE TABLE `Руководитель: СОТ` (`Ид\РУК^СОТ` INT NOT NULL PRIMARY KEY REFERENCES `Сотрудник%ПЕРС` (`Ид`)); INSERT INTO `Руководитель: СОТ` SET `Ид\РУК^СОТ` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-РУК"); 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, `Дата приказа` VARCHAR (50) NOT NULL, `Ид\ПРИК^РУК` INT NOT NULL REFERENCES `Руководитель: СОТ` (`Ид\РУК^СОТ`)); INSERT INTO `Приказ` SET `Ид` = DEFAULT, `Регномер` = "34667-98", `Дата приказа` = "02.12.2023", `Ид\ПРИК^РУК` = (SELECT * FROM `Руководитель: СОТ` WHERE 1); 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 KEY, `Сроки` VARCHAR (50) NOT NULL); INSERT INTO `Кампания` VALUES (DEFAULT, "2023", "31.12.2023"); 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 KEY, `Ид\КОМ^ПРИК` INT NOT NULL REFERENCES `Приказ` (`Ид`), `Ид\КОМ^КАМП` INT NOT NULL REFERENCES `Кампания` (`Ид`), `Ид\КОМ^СПР` INT NOT NULL REFERENCES `Справка+` (`Ид`)); INSERT INTO `Экзаменационная комиссия` SET `Ид` = DEFAULT, `Регномер` = "74729-09", `Ид\КОМ^ПРИК` = (SELECT `Ид` FROM `Приказ` WHERE `Регномер` = "34667-98"), `Ид\КОМ^КАМП` = (SELECT `Ид` FROM `Кампания` WHERE `Год` = "2023"), `Ид\КОМ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ДИС" AND `Код` = "302"); SELECT "`Экзаменационная комиссия` Table Content:" FROM `Экзаменационная комиссия` WHERE 1 = 0; SELECT * FROM `Экзаменационная комиссия`; DROP TABLE IF EXISTS `Состав: КОМ*ПРЕ`; CREATE TABLE `Состав: КОМ*ПРЕ` (`Нпп` CHAR (100) NOT NULL , `Роль` CHAR (100) NOT NULL , CONSTRAINT `ПК\СОСТ` PRIMARY KEY (`Ид\СОСТ^КОМ`, `Ид\СОСТ^ПРЕ`) , `Ид\СОСТ^КОМ` INT NOT NULL REFERENCES `Экзаменационная комиссия` (`Ид`) , `Ид\СОСТ^ПРЕ` INT NOT NULL REFERENCES `Преподаватель: СОТ` (`Ид\ПРЕ^СОТ`)); INSERT INTO `Состав: КОМ*ПРЕ` SET `Нпп` = "1", `Роль` = "Роль", `Ид\СОСТ^КОМ` = (SELECT `Ид` FROM `Экзаменационная комиссия` WHERE `Регномер` = "74729-09"), `Ид\СОСТ^ПРЕ` = (SELECT `Ид\ПРЕ^СОТ` FROM `Преподаватель: СОТ` WHERE 1); 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 (100) NOT NULL, `Сведения` CHAR (100) NOT NULL, CONSTRAINT `УН\СПЕ` UNIQUE KEY (`Ид\СПЕ^СПР`, `Код`), `Ид\СПЕ^СПР` INT NOT NULL REFERENCES `Справка+` (`Ид`)); INSERT INTO `Специальность\НАПР` SET `Ид` = DEFAULT, `Код` = "123", `Название` = "Специальность 1", `Сведения` = "Сведения", `Ид\СПЕ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "НАПР" AND `Код` = "401"); INSERT INTO `Специальность\НАПР` SET `Ид` = DEFAULT, `Код` = "234", `Название` = "Специальность 2 вузовская", `Сведения` = "Сведения", `Ид\СПЕ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "НАПР" AND `Код` = "401"); 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 KEY, `Дата подачи` VARCHAR (50) NOT NULL, `Сведения абитуриента` CHAR (10) NOT NULL, `Ид\АБИТ^СПЕ` INT NOT NULL REFERENCES `Специальность\НАПР` (`Ид`), `Ид\АБИТ^КАМП` INT NOT NULL REFERENCES `Кампания` (`Ид`)); INSERT INTO `Абитуриент` SET `Ид` = DEFAULT, `Регномер` = "56959-80", `Дата подачи` = "10.09.2023", `Сведения абитуриента` = "Сведения", `Ид\АБИТ^СПЕ` = (SELECT `Ид` FROM `Специальность\НАПР` WHERE `Код` = "123"), `Ид\АБИТ^КАМП` = (SELECT `Ид` FROM `Кампания` WHERE 1); INSERT INTO `Абитуриент` SET `Ид` = DEFAULT, `Регномер` = "34567-80", `Дата подачи` = "10.09.2023", `Сведения абитуриента` = "Сведения", `Ид\АБИТ^СПЕ` = (SELECT `Ид` FROM `Специальность\НАПР` WHERE `Код` = "234"), `Ид\АБИТ^КАМП` = (SELECT `Ид` FROM `Кампания` WHERE 1); 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 KEY, `Дата заседания` VARCHAR (50) NOT NULL, `Ид\ЗАС^КАМП` INT NOT NULL REFERENCES `Кампания` (`Ид`)); INSERT INTO `Заседание приемной комиссии` SET `Ид` = DEFAULT, `Регномер заседания` = "34628-73", `Дата заседания` = "20.09.2023", `Ид\ЗАС^КАМП` = (SELECT `Ид` FROM `Кампания` WHERE 1); SELECT "`Заседание приемной комиссии` Table Content:" FROM `Заседание приемной комиссии` WHERE 1 = 0; SELECT * FROM `Заседание приемной комиссии`; DROP TABLE IF EXISTS `Решение по абитуриенту: ЗАС*АБИТ`; CREATE TABLE `Решение по абитуриенту: ЗАС*АБИТ` (`Решение` CHAR (10) NOT NULL, CONSTRAINT `ПК\РЕШ` PRIMARY KEY (`Ид\РЕШ^ЗАС`, `Ид\РЕШ^АБИТ`), `Ид\РЕШ^ЗАС` INT NOT NULL REFERENCES `Заседание приемной комиссии` (`Ид`), `Ид\РЕШ^АБИТ` INT NOT NULL REFERENCES `Абитуриент` (`Ид`), `Ид\РЕШ^ПРИК` INT NOT NULL REFERENCES `Приказ` (`Ид`)); INSERT INTO `Решение по абитуриенту: ЗАС*АБИТ` SET `Решение` = "Зачислен", `Ид\РЕШ^ЗАС` = (SELECT `Ид` FROM `Заседание приемной комиссии` WHERE `Регномер заседания` = "34628-73"), `Ид\РЕШ^АБИТ` = (SELECT `Ид` FROM `Абитуриент` WHERE `Регномер` = "56959-80"), `Ид\РЕШ^ПРИК` = (SELECT `Ид` FROM `Приказ` WHERE `Регномер` = "34667-98"); SELECT "`Решение по абитуриенту: ЗАС*АБИТ` Table Content:" FROM `Решение по абитуриенту: ЗАС*АБИТ` WHERE 1 = 0; SELECT * FROM `Решение по абитуриенту: ЗАС*АБИТ`; DROP TABLE IF EXISTS `Экзамен: АБИТ*КОМ`; CREATE TABLE `Экзамен: АБИТ*КОМ` (`Нпп` CHAR (10) NOT NULL, `Дата` CHAR (100) NOT NULL, `Оценка` CHAR (10) NOT NULL, CONSTRAINT `ПК\ЭКЗ` PRIMARY KEY (`Ид\ЭКЗ^КОМ`, `Ид\ЭКЗ^АБИТ`), `Ид\ЭКЗ^КОМ` INT NOT NULL REFERENCES `Экзаменационная комиссия` (`Ид`), `Ид\ЭКЗ^АБИТ` INT NOT NULL REFERENCES `Абитуриент` (`Ид`), `Ид\ЭКЗ^СПЕ` INT NOT NULL REFERENCES `Специальность\НАПР` (`Ид`)); INSERT INTO `Экзамен: АБИТ*КОМ` SET `Нпп` = "1", `Дата` = "12.09.2023", `Оценка` = "5", `Ид\ЭКЗ^КОМ` = (SELECT `Ид` FROM `Экзаменационная комиссия` WHERE `Регномер` = "74729-09"), `Ид\ЭКЗ^АБИТ` = (SELECT `Ид` FROM `Абитуриент` WHERE `Регномер` = "56959-80"), `Ид\ЭКЗ^СПЕ` = (SELECT `Ид` FROM `Специальность\НАПР` WHERE `Код` = "123"); SELECT "`Экзамен: АБИТ*КОМ` Table Content:" FROM `Экзамен: АБИТ*КОМ` WHERE 1 = 0; SELECT * FROM `Экзамен: АБИТ*КОМ`; DROP VIEW IF EXISTS `вирт_Заседание приемной комиссии`; CREATE VIEW `вирт_Заседание приемной комиссии` AS SELECT `ЗАС`.`Регномер заседания` AS `Регномер заседания`, `ЗАС`.`Дата заседания` AS `Дата заседания`, `КАМП`.`Год` AS `Год кампании`, `КАМП`.`Сроки` AS `Сроки кампании`, `ЗАС`.`Ид` AS `Ид\Заседание приемной комиссии` FROM `Заседание приемной комиссии` AS `ЗАС` LEFT JOIN `Кампания` AS `КАМП` ON `ЗАС`.`Ид\ЗАС^КАМП` = `КАМП`.`Ид` ; SELECT * FROM `вирт_Заседание приемной комиссии`; DROP PROCEDURE IF EXISTS `проц_Решение по абитуриенту`; CREATE PROCEDURE `проц_Решение по абитуриенту` (IN `@Ид\Заседание приемной комиссии` INT) SELECT `РЕШ`.`Решение` AS `Решение`, `ПРИК`.`Регномер` AS `Регномер приказа`, `ПРИК`.`Дата приказа` 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 `проц_Решение по абитуриенту` (1); DROP VIEW IF EXISTS `вирт_Экзамен%Абитуриент`; CREATE VIEW `вирт_Экзамен%Абитуриент` AS SELECT `ЭКЗ`.`Нпп` AS `Нпп экзамена`, `ЭКЗ`.`Дата` AS `Дата экзамена`, `ЭКЗ`.`Оценка` AS `Оценка`, `КОМ`.`Регномер` AS `Регномер комиссии`, `ПРИК`.`Дата приказа` AS `Дата приказа`, `АБИТ`.`Регномер` AS `Регномер заявления`, `АБИТ`.`Дата подачи` AS `Дата подачи заявления`, `АБИТ`.`Сведения абитуриента` AS `Сведения абитуриента`, `СПЕ`.`Код` AS `Код специальности`, `СПЕ`.`Название` AS `Название специальности`, `СПР`.`Код` AS `Код направления`, `СПР`.`Название` AS `Название направления` FROM `Экзамен: АБИТ*КОМ` AS `ЭКЗ` LEFT JOIN `Экзаменационная комиссия` AS `КОМ` ON `ЭКЗ`.`Ид\ЭКЗ^КОМ` = `КОМ`.`Ид` LEFT JOIN `Приказ` AS `ПРИК` ON `КОМ`.`Ид\КОМ^ПРИК` = `ПРИК`.`Ид` LEFT JOIN `Абитуриент` AS `АБИТ` ON `ЭКЗ`.`Ид\ЭКЗ^АБИТ` = `АБИТ`.`Ид` LEFT JOIN `Специальность\НАПР` AS `СПЕ` ON `АБИТ`.`Ид\АБИТ^СПЕ` = `СПЕ`.`Ид` LEFT JOIN `Справка+` AS `СПР` ON `СПЕ`.`Ид\СПЕ^СПР` = `СПР`.`Ид` ; SELECT * FROM `вирт_Экзамен%Абитуриент`; DROP VIEW IF EXISTS `вирт_Заседание приемной комиссии_решения`; CREATE VIEW `вирт_Заседание приемной комиссии_решения` AS WITH `ЧРЕШ` AS ( SELECT `РЕШ`.`Ид\РЕШ^ЗАС` AS `Ид_РЕШ`, COUNT(*) AS `Кол_РЕШ` FROM `Решение по абитуриенту: ЗАС*АБИТ` AS `РЕШ` GROUP BY `Ид\РЕШ^ЗАС`) SELECT `ЗАС`.`Регномер заседания` AS `Регномер заседания`, `ЗАС`.`Дата заседания` AS `Дата заседания`, `КАМП`.`Год` AS `Год кампании`, `КАМП`.`Сроки` AS `Сроки кампании`, COUNT(*) AS `Количество решений` FROM `Решение по абитуриенту: ЗАС*АБИТ` AS `РЕШ` LEFT JOIN `Заседание приемной комиссии` AS `ЗАС` ON `РЕШ`.`Ид\РЕШ^ЗАС` = `ЗАС`.`Ид` LEFT JOIN `Кампания` AS `КАМП` ON `ЗАС`.`Ид\ЗАС^КАМП` = `КАМП`.`Ид` GROUP BY `РЕШ`.`Ид\РЕШ^ЗАС`; SELECT * FROM `вирт_Заседание приемной комиссии_решения`; DROP VIEW IF EXISTS `вирт_Заседание приемной комиссии_зачисленные`; CREATE VIEW `вирт_Заседание приемной комиссии_зачисленные` AS WITH `ЧЗАЧ` AS ( SELECT `РЕШ`.`Ид\РЕШ^ЗАС` AS `Ид_РЕШ`, COUNT(*) AS `Кол_ЗАЧ` FROM `Решение по абитуриенту: ЗАС*АБИТ` AS `РЕШ` GROUP BY `Ид\РЕШ^ЗАС`) SELECT `ЗАС`.`Регномер заседания` AS `Регномер заседания`, `ЗАС`.`Дата заседания` AS `Дата заседания`, `КАМП`.`Год` AS `Год кампании`, `КАМП`.`Сроки` AS `Сроки кампании`, COUNT(*) AS `Число зачисленных` FROM `Решение по абитуриенту: ЗАС*АБИТ` AS `РЕШ` LEFT JOIN `Заседание приемной комиссии` AS `ЗАС` ON `РЕШ`.`Ид\РЕШ^ЗАС` = `ЗАС`.`Ид` LEFT JOIN `Кампания` AS `КАМП` ON `ЗАС`.`Ид\ЗАС^КАМП` = `КАМП`.`Ид` GROUP BY `РЕШ`.`Ид\РЕШ^ЗАС`; 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