Определить, сколько сотрудников в каждом отделе - MySQL
Формулировка задачи:
Помогите пожалуйста, кто понимает, оч надо
типы полей обозначаются следующим образом: N-числовой, c-символьный,d-дата,t-время,L-логический.
Создать и заполнить отношения:
1. Отношение "Отделы"(идентификатор,"название отдела"
2. Отношение "Научные направления"(Идентификатор, "название научной специалбности")
3. Отношение "сотрудники"(основное)
ну это типа таблицы, я не знаю как тут вставлять.
_________________________________________________
|содержимое поля|тип | примечание |
|Табелный номер | N |первичный ключ|
|ФИО | C |оязательное поле|
|Должность |C |Обязательное поле|
|Учёное звание |С| |
|Шифр специальности|N|специальность по диплому|
|Научная специализация|С|внешний ключ|
|Номер отдела|С|Внешний ключ|
__________________________________________________
Получить информаци:
1. Определить, сколько сотрудников в каждом отделе
2. "Сотрудники отдела"информационные технологии"(все поля отношения "Сотрудники")
3. Вывести должность сотрудника "иванов И.И."
Решение задачи: «Определить, сколько сотрудников в каждом отделе»
textual
Листинг программы
CREATE TABLE Department(DNumber NUMERIC(5,0) PRIMARY KEY, DName VARCHAR(30) NOT NULL); CREATE TABLE Topics(TNumber NUMERIC(5,0) PRIMARY KEY, TName VARCHAR(30) NOT NULL); CREATE TABLE Staff(SNumber NUMERIC(5,0) PRIMARY KEY, Initials VARCHAR(50) NOT NULL, POSITION VARCHAR(30) NOT NULL, Academic_Degrees VARCHAR(30), Speciality_Code NUMERIC(5,0) NOT NULL, TNumber NUMERIC(5,0) NOT NULL, DNumber NUMERIC(5,0) NOT NULL, FOREIGN KEY(TNumber) REFERENCES Topics, FOREIGN KEY(DNumber) REFERENCES Department); INSERT INTO Department VALUES(1, 'ddd'); INSERT INTO Department VALUES(2, 'aaaa'); INSERT INTO Department VALUES(3, 'bbbbb'); INSERT INTO Topics VALUES(1, 'ssss'); INSERT INTO Topics VALUES(2, 'iii'); INSERT INTO Topics VALUES(3, 'mmmm'); INSERT INTO Staff VALUES(1, 'Иванов И.И.', 'looser1', 'noob1',12, 1, 1); INSERT INTO Staff VALUES(2, 'qw er ty2', 'looser2', 'noob2', 13, 1, 1); INSERT INTO Staff VALUES(3, 'qw er ty3', 'looser3', 'noob3', 14, 1, 1); INSERT INTO Staff VALUES(4, 'qw er ty1', 'looser1', 'noob1',12, 1, 1); INSERT INTO Staff VALUES(5, 'qw er ty2', 'looser2', 'noob2', 13, 2, 2); INSERT INTO Staff VALUES(6, 'qw er ty3', 'looser3', 'noob3', 14, 3, 3); /* Задание 1 */ SELECT COUNT (*) FROM Staff WHERE DNumber = 1; SELECT COUNT (*) FROM Staff WHERE DNumber = 2; SELECT COUNT (*) FROM Staff WHERE DNumber = 3; /* Задание 2 */ SELECT * FROM Staff WHERE DNumber = 1; /* Задание 3 */ SELECT * FROM Staff WHERE Initials = 'Иванов И.И.';
Объяснение кода листинга программы
- Создается таблица
Department
с полямиDNumber
иDName
. - Создается таблица
Topics
с полямиTNumber
иTName
. - Создается таблица
Staff
с полямиSNumber
,Initials
,POSITION
,Academic_Degrees
,Speciality_Code
,TNumber
,DNumber
. - В таблицу
Department
добавляются три записи с номерами отделов 1, 2 и 3 и названиямиddd
,aaaa
иbbbbb
соответственно. - В таблицу
Topics
добавляются три записи с номерами тем 1, 2 и 3 и названиямиssss
,iii
иmmmm
соответственно. - В таблицу
Staff
добавляются шесть записей с различными данными о сотрудниках, включая их номера, имена, должности, ученые степени, коды специализаций, номера отделов и темы. - Выполняются задания:
- Считается количество сотрудников в отделе с номером 1.
- Считается количество сотрудников в отделе с номером 2.
- Считается количество сотрудников в отделе с номером 3.
- Выводятся все данные о сотрудниках отдела с номером 1.
- Выводятся все данные о сотрудниках, у которых имя начинается на
Иванов И.И.
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д