CREATE TABLE `app_product` (
`id` bigint UNSIGNED NOT NULL,
`name` varchar(256) NOT NULL,
`price` int NOT NULL,
`rating` smallint NOT NULL DEFAULT '0',
`img` varchar(256) NOT NULL,
`createdAt` datetime NOT NULL,
`updatedAt` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `app_product` (`id`, `name`, `price`, `rating`, `img`, `createdAt`, `updatedAt`) VALUES
(1, 'AAilin / Π ΡΠ±Π°ΡΠΊΠ° Π±Π΅Π»Π°Ρ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΡΡΠΊΠ°Π²ΠΎΠΌ Π½Π°ΡΡΠ΄Π½Π°Ρ ΡΠΈΡΠΎΠ½ΠΎΠ²Π°Ρ ΠΎΡΠΈΡΠ½Π°Ρ', 1580, 0, 'df5715e1-755b-4c09-81fd-a338abbc0ae3.jpg', '2022-04-01 23:21:29', '2022-04-01 23:21:29'),
(2, 'Olesa Chugunova / Π ΡΠ±Π°ΡΠΊΠ° ΠΎΠ²Π΅ΡΡΠ°ΠΉΠ·/ ΠΠ°Π·ΠΎΠ²Π°Ρ ΡΡΠ±Π°ΡΠΊΠ° ', 2150, 0, '7843d759-7c4b-456e-863c-8d8039d7ae5e.jpg', '2022-04-01 23:21:29', '2022-04-01 23:21:29'),
(3, 'New Life jersey / Π ΡΠ±Π°ΡΠΊΠ° ΠΆΠ΅Π½ΡΠΊΠ°Ρ/ΠΠ»ΡΠ·ΠΊΠ° ΠΎΠ΄Π΅ΠΆΠ΄Π°/ΠΠ»ΡΠ·Π°/Π€ΡΡΠ±ΠΎΠ»ΠΊΠ°/ΠΠΎΠ»ΡΡΠΎΠΉ ΡΠ°Π·ΠΌΠ΅Ρ', 1890, 0, 'add0d177-db50-4af9-b168-e2076afb8d0a.jpg', '2022-04-01 23:23:07', '2022-04-01 23:23:07'),
(4, 'Darya Selskaya / Π ΡΠ±Π°ΡΠΊΠ° Oversize/ΠΆΠ΅Π½ΡΠΊΠ°Ρ ΠΎΠ²Π΅ΡΡΠ°ΠΉΠ·/ΠΎΠ²Π΅ΡΡΠ°ΠΉΠ· Π±Π΅Π»Π°', 2450, 0, '09e7f6ef-89c6-494e-952d-b3b091d13efc.jpg', '2022-04-01 23:23:07', '2022-04-01 23:23:07'),
(5, 'ANNEN / Π ΡΠ±Π°ΡΠΊΠ°/Ρ ΡΠΈΡΠΎΠΊΠΈΠΌΠΈ ΡΡΠΊΠ°Π²Π°ΠΌΠΈ/ΠΎΠ²Π΅ΡΡΠ°ΠΉΠ·/Π΄Π»Ρ ΠΎΡΠΈΡΠ°, ΡΠΊΠΎΠ»Ρ', 1540, 0, 'e99c7cfb-71b5-4e54-8447-f989867d1be3.jpg', '2022-04-01 23:24:14', '2022-04-01 23:24:14'),
(6, 'AAilin / ΠΠ»ΡΠ·ΠΊΠ° ΡΡΠ±Π°ΡΠΊΠ° Π±Π΅Π»Π°Ρ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΡΡΠΊΠ°Π²ΠΎΠΌ Π½Π°ΡΡΠ΄Π½Π°Ρ ΡΠΈΡΠΎΠ½ΠΎΠ²Π°Ρ ΠΎΡΠΈΡΠ½Π°Ρ', 1980, 0, 'fd251dc0-c222-4a3d-8765-4a7a4faa5e73.jpg', '2022-04-01 23:24:14', '2022-04-01 23:24:14'),
(7, 'A-A Awesome Apparel by Ksenia Avakyan / ΠΠ»ΡΠ·ΠΊΠ° ΠΆΠ΅Π½ΡΠΊΠ°Ρ ΠΎΠ΄Π΅ΠΆΠ΄Π°/ΠΠ»ΡΠ·Π°/ΠΎΡΠΈΡΠ½Π°Ρ', 3540, 0, '7ac362b3-071b-4c9d-a2c0-1ac5cf975f65.jpg', '2022-04-01 23:24:59', '2022-04-01 23:24:59'),
(8, 'SOLL / ΠΠ»ΡΠ·ΠΊΠ° ΠΆΠ΅Π½ΡΠΊΠ°Ρ , ΡΡΠ±Π°ΡΠΊΠ° ΠΎΠ²Π΅ΡΡΠ°ΠΉΠ· ΠΎΠ΄Π΅ΠΆΠ΄Π° Π»Π΅ΡΠ½ΡΡ Π±Π»ΡΠ·Π° Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ ΡΡΠΊΠ°Π²ΠΎΠΌ ΠΎΡΠΈΡΠ½Π°Ρ ΡΡΠΈΠ»ΡΠ½Π°Ρ ', 2480, 0, '33ed01a4-e090-46bf-8a3a-b24b6df480fc.jpg', '2022-04-01 23:25:47', '2022-04-01 23:25:47'),
(9, 'TTtextile / ΠΠ»ΡΠ·ΠΊΠ°/ΠΆΠ΅Π½ΡΠΊΠ°Ρ/ΠΆΠ΅Π½ΡΠΊΠ°Ρ ΠΏΡΠ°Π·Π΄Π½ΠΈΡΠ½Π°Ρ Ρ ΡΡΠΊΠ°Π²ΠΎΠΌ/ΠΆΠ΅Π½ΡΠΊΠ°Ρ Π±Π΅Π»Π°Ρ ΠΎΠ²Π΅ΡΡΠ°ΠΉΠ·', 1900, 0, '2b666c94-4557-4817-93ad-3adada89158d.jpg', '2022-04-01 23:25:47', '2022-04-01 23:25:47'),
(10, 'BLACKSEASON / ΠΠΎΠ΄ΠΈ ΠΆΠ΅Π½ΡΠΊΠΎΠ΅ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΡΡΠΊΠ°Π²ΠΎΠΌ', 1780, 0, '6aeedc07-ac95-4c99-b4a8-5799ec58a9ac.jpg', '2022-04-01 23:25:47', '2022-04-01 23:25:47'),
(11, 'Missta / ΠΠ»ΡΠ·ΠΊΠ°-Π±ΠΎΠ΄ΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΏΠ»Π΅ΡΠΎΠΌ, Π²ΠΎΠ΄ΠΎΠ»Π°Π·ΠΊΠ° ΠΆΠ΅Π½ΡΠΊΠ°Ρ , Π±Π»ΡΠ·ΠΊΠ° ΠΏΡΠ°Π·Π΄Π½ΠΈΡΠ½Π°Ρ', 1780, 0, 'd1bfbbd0-6ded-4525-a077-518b75a60fb8.jpg', '2022-04-01 23:26:37', '2022-04-01 23:26:37'),
(12, 'Moremio / ΠΠΎΠ΄ΠΈ ΠΆΠ΅Π½ΡΠΊΠΎΠ΅ ΡΡΠΈΠΊΠΎΡΠ°ΠΆΠ½ΠΎΠ΅ Π½Π° Π·Π°ΠΏΠ°Ρ
Π΅ Ρ ΠΏΡΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΌΠΈ ΡΡΠΊΠ°Π²Π°ΠΌΠΈ ΠΈ Π΄ΡΠ°ΠΏΠΈΡΠΎΠ²ΠΊΠΎΠΉ, Π²Π΅ΡΠ΅ΡΠ½ΠΈΠΉ Π½Π°ΡΡΠ΄', 2870, 0, '626ada13-df1f-485a-89e9-18fb65ed0719.jpg', '2022-04-01 23:26:37', '2022-04-01 23:26:37'),
(13, 'BAWER / Π ΡΠ±Π°ΡΠΊΠ° Slim Fit ', 2450, 0, '594ca382-4238-4dbf-b1fb-3504bb4726cb.jpg', '2022-04-01 23:27:30', '2022-04-01 23:27:30'),
(14, 'GALBIATI / Π ΡΠ±Π°ΡΠΊΠ° ΠΌΡΠΆΡΠΊΠ°Ρ/ΠΏΡΠΈΡΠ°Π»Π΅Π½Π½Π°Ρ/ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ/Π½Π°ΡΡΠ΄Π½Π°Ρ/ΠΎΠ΄Π½ΠΎΡΠΎΠ½Π½Π°Ρ/Π’ΡΡΡΠΈΡ', 3200, 0, '1b6648ea-1903-4732-9916-7f858efc8e82.jpg', '2022-04-01 23:27:30', '2022-04-01 23:27:30'),
(15, 'BAWER / Π ΡΠ±Π°ΡΠΊΠ° Regular Fit', 2150, 0, 'bc333d16-f92a-4031-9ef8-a39ce5a4e126.jpg', '2022-04-01 23:28:22', '2022-04-01 23:28:22'),
(16, 'Banda / ΠΠΈΠ»Π΅Ρ ΠΌΡΠΆΡΠΊΠΎΠΉ BEZET Basic black/ΠΆΠΈΠ»Π΅ΡΠΊΠ°/ΡΡΠ΅ΠΏΠ»ΡΠ½Π½ΡΠΉ/Π±Π΅Π·ΡΡΠΊΠ°Π²ΠΊΠ°/ΠΎΡΠ΅Π½Π½ΠΈΠΉ/ΠΆΠΈΠ»Π΅ΡΠΊΠ° ΡΡΠ΅ΠΏΠ»Π΅Π½Π½Π°Ρ', 1450, 0, 'c2c06c28-880f-4d43-99ed-1d41f4cc4345.jpg', '2022-04-01 23:28:22', '2022-04-01 23:28:22'),
(17, 'J.Payer / ΠΠ΅Π·ΡΡΠΊΠ°Π²ΠΊΠ°: Π£ΡΠ΅ΠΏΠ»Π΅Π½Π½ΡΠΉ ΠΏΡΡ
ΠΎΠ²ΡΠΉ ΠΆΠΈΠ»Π΅Ρ', 2100, 0, '5644bad8-5390-43ad-9eae-43352423ace4.jpg', '2022-04-01 23:29:10', '2022-04-01 23:29:10'),
(18, 'ROYALSPIRIT / ΠΠΈΠ΄ΠΆΠ°ΠΊ ΠΌΡΠΆΡΠΊΠΎΠΉ ΠΏΠΎΠ΄ Π΄ΠΆΠΈΠ½ΡΡ Π½Π° ΡΠ°Π±ΠΎΡΡ/Π±Π»Π΅ΠΉΠ·Π΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ/casual/ΠΆΠ°ΠΊΠ΅Ρ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΡΠΉ Π΄Π»Ρ Π²ΡΡΠΎΠΊΠΈΡ
', 2140, 0, '9aeafa65-d55c-42e3-a8e6-c19700802ae9.jpg', '2022-04-01 23:29:10', '2022-04-01 23:29:10'),
(19, 'ZAVI / Π₯ΡΠ΄ΠΈ ', 1800, 0, '2e38d3bc-79ce-4e6c-9514-e2499babe803.jpg', '2022-04-01 23:30:01', '2022-04-01 23:30:01'),
(20, 'NinoMio / Π ΡΠ±Π°ΡΠΊΠ° Π΄Π»Ρ Π΄Π΅Π²ΠΎΡΠΊΠΈ ΠΏΠΎΠ΄ΡΠΎΡΡΠΊΠ° ΠΎΠ²Π΅ΡΡΠ°ΠΉΠ· Π¨ΠΊΠΎΠ»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° ΠΠ»ΡΠ·ΠΊΠ° ΡΠΊΠΎΠ»ΡΠ½Π°Ρ Π±Π°Π·ΠΎΠ²Π°Ρ', 2100, 0, '3877131d-48d3-4ef9-8acc-1f2edc861130.jpg', '2022-04-01 23:30:01', '2022-04-01 23:30:01'),
(21, 'Viktory Kids / ΠΠΎΠ΄ΠΎΠ»Π°Π·ΠΊΠ° ΠΏΠΎΠ΄ΡΠΎΡΡΠΊΠΎΠ²Π°Ρ/ΠΊΠ°ΡΠΊΠΎΡΡΠ΅/ Π΄Π»Ρ Π΄Π΅Π²ΠΎΡΠΊΠΈ ΡΠΊΠΎΠ»ΡΠ½Π°Ρ ', 1500, 0, 'b2733e0b-89f0-4208-9fde-b66606d03722.jpg', '2022-04-01 23:30:39', '2022-04-01 23:30:39'),
(22, 'Viktory Kids / Π€ΡΡΠ±ΠΎΠ»ΠΊΠ° Π΄Π»Ρ ΡΠΈΠ·ΠΊΡΠ»ΡΡΡΡΡ ΠΈ ΡΠΏΠΎΡΡΠ°/Π΄Π»Ρ ΠΌΠ°Π»ΡΡΠΈΠΊΠ°/Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠΎΡΡΠΊΠ°', 1420, 0, '2b21ff8e-cb8f-4d93-8dd6-8478b69b141e.jpg', '2022-04-01 23:30:39', '2022-04-01 23:30:39'),
(23, 'Celena / ΠΠ»ΡΠ·ΠΊΠ° ΠΆΠ΅Π½ΡΠΊΠ°Ρ ΠΏΡΠ°Π·Π΄Π½ΠΈΡΠ½Π°Ρ Π½Π°ΡΡΠ΄Π½Π°Ρ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΠΌ ΡΡΠΊΠ°Π²ΠΎΠΌ, ΠΎΡΠΈΡΠ½Π°Ρ ΠΊΡΡΠΆΠ΅Π²Π½Π°Ρ Π»Π΅ΡΠ½ΡΡ ΡΡΠ±Π°ΡΠΊΠ°', 1780, 0, 'b4e11043-e96c-4934-9274-2648a8e016c0.jpg', '2022-04-01 23:31:30', '2022-04-01 23:31:30'),
(24, 'Celena 22 / ΠΠ»ΡΠ·ΠΊΠ° ΠΆΠ΅Π½ΡΠΊΠ°Ρ ΠΏΡΠ°Π·Π΄Π½ΠΈΡΠ½Π°Ρ Π½Π°ΡΡΠ΄Π½Π°Ρ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΠΌ ΡΡΠΊΠ°Π²ΠΎΠΌ, ΠΎΡΠΈΡΠ½Π°Ρ ΠΊΡΡΠΆΠ΅Π²Π½Π°Ρ Π»Π΅ΡΠ½ΡΡ ΡΡΠ±Π°ΡΠΊΠ°', 1240, 0, 'f1d67f70-cfa9-4465-9d3e-15b07e83f1f0.jpg', '2022-04-01 23:31:30', '2022-04-01 23:31:30');
ALTER TABLE `app_product`
ADD PRIMARY KEY (`id`),
ADD KEY `price` (`price`),
ADD KEY `rating` (`rating`);
ALTER TABLE `app_product`
MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=25;
COMMIT;
CREATE TABLE `app_brand` (
`id` int UNSIGNED NOT NULL,
`name` varchar(64) NOT NULL,
`createdAt` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `app_brand` (`id`, `name`, `createdAt`) VALUES
(1, 'Nile', '2022-04-01 23:20:22'),
(2, 'H&M', '2022-04-01 23:20:22'),
(3, 'Adidas', '2022-04-01 23:20:53'),
(4, 'Kappa', '2022-04-01 23:20:53');
ALTER TABLE `app_brand`
ADD PRIMARY KEY (`id`);
ALTER TABLE `app_brand`
MODIFY `id` int UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
COMMIT;
CREATE TABLE `app_brand_product` (
`id` int UNSIGNED NOT NULL,
`brand_id` int UNSIGNED NOT NULL,
`product_id` bigint UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `app_brand_product` (`id`, `brand_id`, `product_id`) VALUES
(1, 1, 1),
(2, 1, 5),
(3, 1, 6),
(4, 1, 5),
(5, 2, 16),
(6, 2, 15),
(7, 3, 10),
(8, 3, 23),
(9, 4, 14),
(10, 4, 17),
(11, 1, 12),
(12, 3, 20),
(13, 4, 22),
(14, 1, 3);
ALTER TABLE `app_brand_product`
ADD PRIMARY KEY (`id`),
ADD KEY `brand_id` (`brand_id`),
ADD KEY `product_id` (`product_id`);
ALTER TABLE `app_brand_product`
MODIFY `id` int UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=15;
ALTER TABLE `app_brand_product`
ADD CONSTRAINT `app_brand_product_ibfk_1` FOREIGN KEY (`brand_id`) REFERENCES `app_brand` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE,
ADD CONSTRAINT `app_brand_product_ibfk_2` FOREIGN KEY (`product_id`) REFERENCES `app_product` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;
COMMIT;
CREATE TABLE `app_type` (
`id` int UNSIGNED NOT NULL,
`name` varchar(64) NOT NULL,
`createdAt` datetime NOT NULL,
`id_category` int UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `app_type` (`id`, `name`, `createdAt`, `id_category`) VALUES
(1, 'Π ΡΠ±Π°ΡΠΊΠ°', '2022-04-02 23:40:35', 1),
(2, 'ΠΠ»ΡΠ·ΠΊΠ°', '2022-04-01 23:40:35', 1),
(3, 'ΠΠ»ΡΠ·ΠΊΠ°-Π±ΠΎΠ΄ΠΈ', '2022-04-01 23:40:55', 1),
(4, 'Π ΡΠ±Π°ΡΠΊΠ°', '2022-04-01 23:40:55', 2),
(5, 'Π‘Π²ΠΈΡΠ΅Ρ', '2022-04-01 23:41:18', 2),
(6, 'Π₯ΡΠ΄ΠΈ', '2022-04-01 23:41:18', 2),
(7, 'Π€ΡΡΠ±ΠΎΠ»ΠΊΠ°', '2022-04-01 23:41:38', 3),
(8, 'ΠΠΎΠ΄ΠΎΠ»Π°Π·ΠΊΠ°', '2022-04-01 23:41:38', 3);
ALTER TABLE `app_type`
ADD PRIMARY KEY (`id`),
ADD KEY `id_category` (`id_category`);
ALTER TABLE `app_type`
MODIFY `id` int UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;
CREATE TABLE `app_type_product` (
`id` int UNSIGNED NOT NULL,
`type_id` int UNSIGNED NOT NULL,
`product_id` bigint UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `app_type_product` (`id`, `type_id`, `product_id`) VALUES
(5, 1, 1),
(6, 1, 5),
(7, 1, 4),
(8, 2, 7),
(9, 2, 6),
(10, 2, 23),
(11, 2, 23),
(12, 3, 10),
(13, 3, 11),
(14, 3, 12),
(15, 4, 15),
(16, 4, 13),
(17, 4, 14),
(18, 5, 16),
(19, 5, 17),
(20, 6, 19),
(21, 5, 18),
(22, 7, 22),
(23, 8, 22),
(24, 1, 20),
(25, 2, 23),
(26, 2, 24),
(27, 5, 17);
ALTER TABLE `app_type_product`
ADD PRIMARY KEY (`id`),
ADD KEY `type_id` (`type_id`),
ADD KEY `product_id` (`product_id`);
ALTER TABLE `app_type_product`
MODIFY `id` int UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=28;
ALTER TABLE `app_type_product`
ADD CONSTRAINT `app_type_product_ibfk_1` FOREIGN KEY (`type_id`) REFERENCES `app_type` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE,
ADD CONSTRAINT `app_type_product_ibfk_2` FOREIGN KEY (`product_id`) REFERENCES `app_product` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;
COMMIT;
# ΠΡΠ±ΡΠ°Π»ΠΈ ΡΠΈΠΏ ΠΈ ΡΠΎΠ²Π°Ρ - ΡΡΡ Π²ΡΠ΅ ΠΏΡΠΎΡΡΠΎ!
Select
app_type.name AS 'Π’ΠΈΠΏ',
app_product.name AS 'Π’ΠΎΠ²Π°Ρ'
FROM app_type_product
LEFT JOIN app_type ON (app_type.id = app_type_product.type_id)
LEFT JOIN app_product ON (app_product.id = app_type_product.product_id)
# ΠΠ°ΠΊ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΈΠΏ ΠΈ ΡΠΎΠ²Π°Ρ ΠΈ Π±ΡΠ΅Π½Π΄ - ΡΡΡ Π²ΡΠ΅ Π½Π΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎ! )
Select
app_type.name AS 'Π’ΠΈΠΏ',
app_product.name AS 'Π’ΠΎΠ²Π°Ρ'
app_brand.name AS 'ΠΡΠ΅Π½Π΄',
FROM app_type_product, app_brand_product
LEFT JOIN app_type ON (app_type.id = app_type_product.type_id)
LEFT JOIN app_product ON (app_product.id = app_type_product.product_id)
#...