Files
sql_advanced/lab2-12/tasks.sql
T
Vitalii Litvinchuk 9884d8e5af
Advanced SQL Quality Check / Lint SQL Scripts (push) Failing after 16s
feat: lab 12
2026-05-05 11:14:57 +03:00

363 lines
5.8 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
MySQL optimization techniques exercise
Дано база даних, у якій є три таблиці: Orders, Products, Activity ( Див.: https://drive.google.com/open?id=18CZPLaV2MaEeMRwURw6cqFKK9MY-wSPx&usp=drive_fs )
Потрібно оптимізувати декілька запитів
Передумови:
##################################################
1. Створіть, якщо не створоно базу даних Lucky_Shrub
CREATE DATABASE IF NOT EXISTS Lucky_Shrub;
--------------------------------------------------
2. Оберіть базу даних Lucky_Shrub
USE Lucky_Shrub;
--------------------------------------------------
3. Створіть таблиці бази даних, якщо не створено 3.1 таблцю Orders
CREATE TABLE IF NOT EXISTS Orders (
OrderID INT NOT NULL PRIMARY KEY,
ClientID VARCHAR(10),
ProductID VARCHAR(10),
Quantity INT,
Cost DECIMAL(6, 2),
Date DATE
);
--------------------------------------------------
3.2 Таблицю Products
CREATE TABLE IF NOT EXISTS Products (
ProductID VARCHAR(10),
ProductName VARCHAR(100),
BuyPrice DECIMAL(6, 2),
SellPrice DECIMAL(6, 2),
NumberOfItems INT
);
--------------------------------------------------
3.3 Таблицю Activity
CREATE TABLE IF NOT EXISTS Activity (
ActivityID INT PRIMARY KEY,
Properties JSON
);
--------------------------------------------------
4. Заповніть таблиці даними (за потреби оновіть) 4.1 таблцю Orders
INSERT INTO
Orders (
OrderID,
ClientID,
ProductID,
Quantity,
Cost,
Date
)
VALUES (
1,
"Cl1",
"P1",
10,
500,
"2020-09-01"
),
(
2,
"Cl2",
"P2",
5,
100,
"2020-09-05"
),
(
3,
"Cl3",
"P3",
20,
800,
"2020-09-03"
),
(
4,
"Cl4",
"P4",
15,
150,
"2020-09-07"
),
(
5,
"Cl3",
"P3",
10,
450,
"2020-09-08"
),
(
6,
"Cl2",
"P2",
5,
800,
"2020-09-09"
),
(
7,
"Cl1",
"P4",
22,
1200,
"2020-09-10"
),
(
8,
"Cl3",
"P1",
15,
150,
"2020-09-10"
),
(
9,
"Cl1",
"P1",
10,
500,
"2020-09-12"
),
(
10,
"Cl2",
"P2",
5,
100,
"2020-09-13"
),
(
11,
"Cl4",
"P5",
5,
100,
"2020-09-15"
),
(
12,
"Cl1",
"P1",
10,
500,
"2022-09-01"
),
(
13,
"Cl2",
"P2",
5,
100,
"2022-09-05"
),
(
14,
"Cl3",
"P3",
20,
800,
"2022-09-03"
),
(
15,
"Cl4",
"P4",
15,
150,
"2022-09-07"
),
(
16,
"Cl3",
"P3",
10,
450,
"2022-09-08"
),
(
17,
"Cl2",
"P2",
5,
800,
"2022-09-09"
),
(
18,
"Cl1",
"P4",
22,
1200,
"2022-09-10"
),
(
19,
"Cl3",
"P1",
15,
150,
"2022-09-10"
),
(
20,
"Cl1",
"P1",
10,
500,
"2022-09-12"
),
(
21,
"Cl2",
"P2",
5,
100,
"2022-09-13"
),
(
22,
"Cl2",
"P1",
10,
500,
"2021-09-01"
),
(
23,
"Cl2",
"P2",
5,
100,
"2021-09-05"
),
(
24,
"Cl3",
"P3",
20,
800,
"2021-09-03"
),
(
25,
"Cl4",
"P4",
15,
150,
"2021-09-07"
),
(
26,
"Cl1",
"P3",
10,
450,
"2021-09-08"
),
(
27,
"Cl2",
"P1",
20,
1000,
"2022-09-01"
),
(
28,
"Cl2",
"P2",
10,
200,
"2022-09-05"
),
(
29,
"Cl3",
"P3",
20,
800,
"2021-09-03"
);
--------------------------------------------------
4.2 таблицію Products
INSERT INTO
Products (
ProductID,
ProductName,
BuyPrice,
SellPrice,
NumberOfItems
)
VALUES (
"P1",
"Artificial grass bags ",
40,
50,
100
),
(
"P2",
"Wood panels",
15,
20,
250
),
(
"P6",
"Water fountain",
65,
80,
15
);
(
"P3",
"Patio slates",
35,
40,
60
),
(
"P4",
"Sycamore trees ",
7,
10,
50
),
(
"P5",
"Trees and Shrubs",
35,
50,
75
),
--------------------------------------------------
4.3 Таблицю Activity
INSERT INTO
Activity (ActivityID, Properties)
VALUES (
1,
'{ "ClientID": "Cl1", "ProductID": "P1", "Order": "True" }'
),
(
2,
'{ "ClientID": "Cl2", "ProductID": "P4", "Order": "False" }'
),
(
3,
'{ "ClientID": "Cl5", "ProductID": "P5", "Order": "True" }'
);
--------------------------------------------------
Цілі:
Використання загальних табличних виразів
Використання підготовлених запитів
Використання даних типу JSON