- CREATE DATABASE Складской_учет
- -- Создание таблицы "Склады"
- CREATE TABLE Склады (
- ID_склада INT PRIMARY KEY,
- адрес NVARCHAR(200),
- доступное_пространство INT
- );
- -- Заполнение таблицы "Склады"
- INSERT INTO Склады (ID_склада, адрес, доступное_пространство)
- VALUES
- (1111, 'Черняховского 40', 100),
- (2222, 'Пушкина 22', 200),
- (3333, 'Грибоедова 5', 150),
- (4444, 'Ленина 3', 300),
- (5555, 'Гагарина 7', 250),
- (6666, 'Инженерная 50', 180),
- (7777, 'Многостаночников 26', 120),
- (8888, 'Кошкина 18', 220),
- (9999, 'Дранниково 43', 130),
- (1000, 'Орденоносцев 34', 280);
- -- Создание таблицы "Товары"
- CREATE TABLE Товары (
- ID_товара INT PRIMARY KEY,
- наименование_товара VARCHAR(100),
- количество_товара INT,
- стоимость INT
- );
- -- Заполнение таблицы "Товары"
- INSERT INTO Товары (ID_товара, наименование_товара, количество_товара, стоимость)
- VALUES
- (123, 'Огурцы', 50, 10),
- (245, 'Игрушки', 30, 20),
- (367, 'Кружки', 20, 15),
- (489, 'Сигареты', 40, 8),
- (501, 'Жесть', 60, 12),
- (623, 'Жидкость', 10, 5),
- (745, 'Книги', 70, 18),
- (867, 'Гитары', 25, 9),
- (989, 'Резина', 35, 14),
- (109, 'Матрицы', 15, 7);
- -- Создание таблицы "Поставщики"
- CREATE TABLE Поставщики (
- ID_поставщика INT PRIMARY KEY,
- название_поставщика VARCHAR(100),
- адрес VARCHAR(200),
- номер_телефона VARCHAR(12),
- ID_товара INT,
- FOREIGN KEY (ID_товара) REFERENCES Товары (ID_товара)
- );
- -- Заполнение таблицы "Поставщики"
- INSERT INTO Поставщики (ID_поставщика, название_поставщика, адрес, номер_телефона, ID_товара)
- VALUES
- (132, 'Поставщик 1', 'Пушкина 23', '+78995553535', 123),
- (254, 'Поставщик 2', 'Орденоносцев 2', '+79993215551', 245),
- (375, 'Поставщик 3', 'Первомайская 1', '+79856787654', 367),
- (475, 'Поставщик 4', 'Разнорабочих 4', '+79754567898', 489),
- (582, 'Поставщик 5', 'Бородина 12', '+74567876543', 501),
- (673, 'Поставщик 6', 'Инженера-Алиева 22', '+79923465432', 623),
- (723, 'Поставщик 7', '8 марта 42', '+79234567456', 745),
- (809, 'Поставщик 8', 'Многостаночников 23', '+73456745676', 867),
- (946, 'Поставщик 9', 'Вкуснокашково 83', '+79654323456', 989),
- (168, 'Поставщик 10', 'Красноморево 4', '+75678545678', 109);
- -- Создание таблицы "Сотрудники"
- CREATE TABLE Сотрудники (
- ID_сотрудника INT PRIMARY KEY,
- ФИО VARCHAR(100),
- должность VARCHAR(100),
- год_рождения DATE,
- ID_склада INT,
- FOREIGN KEY (ID_склада) REFERENCES Склады (ID_склада)
- );
- -- Заполнение таблицы "Сотрудники"
- INSERT INTO Сотрудники (ID_сотрудника, ФИО, должность, год_рождения, ID_склада)
- VALUES
- (1, 'Панков Андрей Михайлович', 'Менеджер', '1986-11-02', 1111),
- (2, 'Соловьев Максим Денисович', 'Грузчик', '1985-11-02', 2222),
- (3, 'Иванова Амина Кирилловна', 'Консультант', '1990-12-05', 3333),
- (4, 'Быкова Валерия Ивановна', 'Менеджер', '1987-08-01', 4444),
- (5, 'Морозов Егор Иванович', 'Грузчик', '1988-01-07', 5555),
- (6, 'Корчагина Ксения Юрьевна', 'Консультант', '1992-05-05', 6666),
- (7, 'Розанова Елена Андреевна', 'Менеджер', '1984-08-08', 7777),
- (8, 'Максимов Артём Сергеевич', 'Грузчик', '1986-09-09', 8888),
- (9, 'Кочергина Кира Дмитриевна', 'Консультант', '1991-10-10', 9999),
- (10, 'Климова Ева Максимовна', 'Менеджер', '1996-06-08', 1000);
- -- Создание таблицы "Клиенты"
- CREATE TABLE Клиенты (
- ID_клиента INT PRIMARY KEY,
- ФИО VARCHAR(100),
- паспортные_данные VARCHAR(11),
- номер_телефона VARCHAR(12),
- год_рождения DATE
- );
- -- Заполнение таблицы "Клиенты"
- INSERT INTO Клиенты (ID_клиента, ФИО, паспортные_данные, номер_телефона, год_рождения)
- VALUES
- (112, 'Наумов Андрей Фёдорович', '4171 152699', '+7456155315', '1980-12-05'),
- (221, 'Голованова Елизавета Андреевна', '4198 981241', '+7532262871', '1985-08-11'),
- (332, 'Рудаков Александр Константинович', '4776 257932', '+7236556965', '1990-04-05'),
- (443, 'Свиридов Роман Тимурович', '4569 460080', '+7923456432', '1982-09-12'),
- (554, 'Щукин Михаил Денисович', '4398 765695', '+7967543462', '1988-05-02'),
- (665, 'Сахарова Мария Егоровна', '4548 384907', '+7964124122', '1992-12-09'),
- (776, 'Яшин Игорь Кириллович', '4954 557426', '+7954112124', '1984-08-08'),
- (887, 'Чернышева Камила Богдановна', '4273 865485', '+7951361562', '1986-09-02'),
- (998, 'Беляков Давид Максимович', '4326 842452', '+79542156626', '1991-08-07'),
- (103, 'Петров Захар Дмитриевич', '4349 551121', '+74215516364', '1983-04-02');
- -- Создание таблицы "Операции приема-выдачи товаров"
- CREATE TABLE Операции_приемавыдачи_товаров (
- ID_операции INT PRIMARY KEY,
- ID_товара INT,
- ID_склада INT,
- ID_сотрудника INT,
- ID_клиента INT,
- датавремя DATETIME,
- тип_операции NVARCHAR(100),
- FOREIGN KEY (ID_товара) REFERENCES Товары (ID_товара),
- FOREIGN KEY (ID_склада) REFERENCES Склады (ID_склада),
- FOREIGN KEY (ID_сотрудника) REFERENCES Сотрудники (ID_сотрудника),
- FOREIGN KEY (ID_клиента) REFERENCES Клиенты (ID_клиента)
- );
- -- Заполнение таблицы "Операции приема-выдачи товаров"
- INSERT INTO Операции_приемавыдачи_товаров (ID_операции, ID_товара, ID_склада, ID_сотрудника, ID_клиента, датавремя, тип_операции)
- VALUES
- (11, 123, 1111, 1, 112, '2023-01-01 09:00:00', 'прием'),
- (22, 123, 1111, 2, 221, '2023-01-02 10:30:00', 'выдача'),
- (33, 367, 2222, 3, 332, '2023-01-03 12:15:00', 'прием'),
- (44, 367, 2222, 4, 443, '2023-01-04 14:45:00', 'выдача'),
- (55, 489, 3333, 5, 554, '2023-01-05 16:20:00', 'прием'),
- (66, 489, 3333, 6, 665, '2023-01-06 18:00:00', 'выдача'),
- (77, 501, 4444, 7, 776, '2023-01-07 09:30:00', 'прием'),
- (88, 501, 4444, 8, 887, '2023-01-08 11:45:00', 'выдача'),
- (99, 623, 7777, 9, 998, '2023-01-09 13:40:00', 'прием'),
- (18, 623, 7777, 10, 103, '2023-01-10 15:15:00', 'выдача');
- SELECT * FROM Товары
- WHERE количество_товара > 50;
- SELECT * FROM Сотрудники
- WHERE должность = 'Менеджер' AND год_рождения > '1990-01-01';
- SELECT Клиенты.ID_клиента, Клиенты.ФИО, Товары.наименование_товара, Операции_приемавыдачи_товаров.датавремя
- FROM Клиенты
- JOIN Операции_приемавыдачи_товаров ON Клиенты.ID_клиента = Операции_приемавыдачи_товаров.ID_клиента
- JOIN Товары ON Операции_приемавыдачи_товаров.ID_товара = Товары.ID_товара
- WHERE Клиенты.год_рождения > '1980-01-01' AND Товары.количество_товара > 5;
- SELECT *
- FROM Товары
- WHERE (количество_товара < 25 OR стоимость > 40) AND наименование_товара LIKE '%Кружки';
- SELECT * FROM Операции_приемавыдачи_товаров
- JOIN Сотрудники ON Операции_приемавыдачи_товаров.ID_сотрудника = Сотрудники.ID_сотрудника
- WHERE Сотрудники.должность = 'Менеджер';
- SELECT Клиенты.ID_клиента, COUNT(*) AS Количество_операций
- FROM Клиенты
- JOIN Операции_приемавыдачи_товаров ON Клиенты.ID_клиента = Операции_приемавыдачи_товаров.ID_клиента
- GROUP BY Клиенты.ID_клиента;
- SELECT Товары.ID_товара, SUM(количество_товара) AS Общее_количество_товара
- FROM Товары
- GROUP BY ID_товара;
[text] Имя
Viewer
Editor
You can edit this paste and save as new: