Створюємо кілька підкатегорій, попередньо з’ясувавши, які ID MySQL призначив раніше створеним:
SELECT * FROM categories;
Id |
Parent_id |
Name |
description |
0
1
2 |
0
0
0 |
Top
Computers
Multimedia |
Це — категорія верхнього рівня
Все, з чого можна скласти ПЕОМ
Відеопроектори та аудіосистеми. |
Отримали id = 1 для [Computers] і id = 2 для [Multimedia]. Створимо ще кілька підкатегорій:
INSERT INTO categories (parent_id, name, description)
VALUES (1, ‘Printers’, ‘Лазерні та струменеві принтери’);
INSERT INTO categories (parent_id, name, description)
VALUES (1, ‘Systems’, ‘Системні блоки різноманітних конфігурацій’);
INSERT INTO categories (parent_id, name, description)
VALUES (2, ‘Projector’, ‘Комп’ютерні відеопроектори’);
INSERT INTO categories (parent_id, name, description)
VALUES (2, ‘Audiosystems’, ‘ Комп’ютерні аудіосистеми HIFI’);
Перевіримо поточний стан таблиці категорій бази даних командою:
SELECT * FROM categories;
Тепер виконаємо кілька запитів SELECT. Наприклад, знайти всі підкатегорії категорії [Computers]:
SELECT cat.id, cat.name, cat.description
FROM categories cat, categories parent
WHERE cat.parent_id = parent_id
AND parent.name = ‘Computers ‘;
Далі розмістимо дані про продукцію в таблиці:
INSERT INTO products (name, description, price)
VALUES (‘HP LJ 1300’, ‘Принтер лазерний, офісний’, 1200.00);
INSERT INTO products (name, description, price)
VALUES (‘HP Canon 1120’, ‘Принтер лазерний, офісний’, 1102.00);
INSERT INTO products (name, description, price)
VALUES (‘Infocus’, ‘Відеопроектор’, 10000.50);
INSERT INTO products (name, description, price)
VALUES (‘HP SJ 8400’, ‘Сканер планшетний’, 2200.00);
Перевіримо стан таблиці інструкцією:
SELECT * FROM products.
Розіб’ємо продукцію за категоріями: розмістимо HP LJ 1300 в категорію [printers] (id:3) і HP SJ 8400 в категорію [Scanners] (id:4).
INSERT INTO products_categories (product_id, category_id)
VALUES (1, 3);
INSERT INTO products_categories (product_id, category_id)
VALUES (3, 4);
Перевіримо стан products_categories командою:
SELECT * FROM products_categories;
або
SELECT cat.name, prod.name, prod.price
FROM categories cat, products prod, products_categories pc
WHERE cat.id = pc.category_id
AND prod.id = pc.product_id;
Створимо запит для знаходження назви і ціни продукції за підкатегорією [Printers]:
SELECT prod.name, prod.price
FROM categories cat, products prod, products_categories pc
WHERE cat.id = pc.category_id
AND prod.id = pc.product_id
AND cat.name = ‘Printers’;
Name |
Price |
HP LJ 1300
Canon 1120 |
1200.00
1102.00 |
Командою QUIT завершимо роботу консолі сервера MySQL.
Зауваження. Всі наведені вище команди консолі MySQL в їх послідовності можна об’єднати в файл, наприклад createdb.txt, та виконати з консолі MySQL команду:
source createdb.txt
|