refactor: reorganize seed_all.sql for improved clarity and structure
This commit is contained in:
+258
-162
@@ -1,12 +1,9 @@
|
||||
-- ============================================================
|
||||
-- seed_all.sql — Komplett seed för kategorier + produkter
|
||||
--
|
||||
-- Slår ihop:
|
||||
-- categories_supplement.sql (INSERT IGNORE kategorier)
|
||||
-- 002-seed-products.sql (INSERT IGNORE produkter utan categoryId)
|
||||
-- seed_product_categories.sql (UPDATE categoryId via exakta 3-nivå-joins)
|
||||
--
|
||||
-- Säkert att köra flera gånger (idempotent).
|
||||
-- Seeden är ensam sanningskälla för kategorier.
|
||||
-- Den rensar Category-tabellen och bygger upp allt från scratch.
|
||||
-- Product.categoryId nollställs och sätts om av STEG 3.
|
||||
--
|
||||
-- Kör på servern:
|
||||
-- DB_PASS=$(grep MARIADB_ROOT_PASSWORD .env | cut -d= -f2)
|
||||
@@ -15,226 +12,325 @@
|
||||
|
||||
|
||||
-- ============================================================
|
||||
-- STEG 1: KATEGORIER
|
||||
-- (från categories_supplement.sql)
|
||||
-- RESET: Rensa kategorier och koppla bort produkter
|
||||
-- ============================================================
|
||||
SET foreign_key_checks = 0;
|
||||
TRUNCATE TABLE `Category`;
|
||||
SET foreign_key_checks = 1;
|
||||
UPDATE `Product` SET `categoryId` = NULL;
|
||||
|
||||
|
||||
-- ============================================================
|
||||
-- STEG 1: KATEGORIER (komplett träd — enda sanningskällan)
|
||||
-- ============================================================
|
||||
|
||||
-- LEVEL 1 — Toppkategorier (nya)
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`) VALUES ('Dryck', NULL);
|
||||
-- ── NIVÅ 1: Toppkategorier ───────────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Bröd & Kakor', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Dryck', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Färdigmat', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Fryst', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Frukt & Grönt', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Glass, godis & snacks', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Kött, chark & fågel', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Mejeri, ost & ägg', NULL);
|
||||
INSERT INTO `Category` (`name`, `parentId`) VALUES ('Skafferi', NULL);
|
||||
|
||||
-- LEVEL 2 — under Dryck
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Öl & cider', id FROM `Category` WHERE name = 'Dryck' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Läsk och Energidryck', id FROM `Category` WHERE name = 'Dryck' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Bröd & Kakor ──────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Bröd', id FROM `Category` WHERE name = 'Bröd & Kakor' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Kex & Kakor', id FROM `Category` WHERE name = 'Bröd & Kakor' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Knäckebröd & Skorpor', id FROM `Category` WHERE name = 'Bröd & Kakor' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 2 — under Bröd & Kakor
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Knäckebröd & Skorpor', id FROM `Category` WHERE name = 'Bröd & Kakor' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Dryck ─────────────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Öl & cider', id FROM `Category` WHERE name = 'Dryck' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Läsk och Energidryck', id FROM `Category` WHERE name = 'Dryck' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 2 — under Fryst
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Frukt & Bär', id FROM `Category` WHERE name = 'Fryst' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färdigmat', id FROM `Category` WHERE name = 'Fryst' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Färdigmat ─────────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Såser, grytbaser & övriga smaksättare', id FROM `Category` WHERE name = 'Färdigmat' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Gratäng & Röror mm', id FROM `Category` WHERE name = 'Färdigmat' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 2 — under Frukt & Grönt
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Grönsaker', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Frukt', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färska bär', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Svamp', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Fryst ─────────────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Bageri', id FROM `Category` WHERE name = 'Fryst' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Grönsaker & kryddor', id FROM `Category` WHERE name = 'Fryst' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Frukt & Bär', id FROM `Category` WHERE name = 'Fryst' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Färdigmat', id FROM `Category` WHERE name = 'Fryst' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 2 — under Glass, godis & snacks
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Choklad', id FROM `Category` WHERE name = 'Glass, godis & snacks' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Frukt & Grönt ─────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Potatis & rotsaker', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Kryddor & smaksättare', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Grönsaker', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Frukt', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Färska bär', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Svamp', id FROM `Category` WHERE name = 'Frukt & Grönt' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 2 — under Kött, chark & fågel
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Kött', id FROM `Category` WHERE name = 'Kött, chark & fågel' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fågel', id FROM `Category` WHERE name = 'Kött, chark & fågel' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Glass, godis & snacks ─────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Chips, snacks & dip', id FROM `Category` WHERE name = 'Glass, godis & snacks' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Choklad', id FROM `Category` WHERE name = 'Glass, godis & snacks' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 2 — under Mejeri, ost & ägg
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Mellanmål & desserter', id FROM `Category` WHERE name = 'Mejeri, ost & ägg' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Kött, chark & fågel ───────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Pålägg', id FROM `Category` WHERE name = 'Kött, chark & fågel' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Korv', id FROM `Category` WHERE name = 'Kött, chark & fågel' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Kött', id FROM `Category` WHERE name = 'Kött, chark & fågel' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Fågel', id FROM `Category` WHERE name = 'Kött, chark & fågel' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 2 — under Skafferi
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Torkad frukt', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Torra baljväxter', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Bakning', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
-- ── NIVÅ 2: under Mejeri, ost & ägg ─────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Ost', id FROM `Category` WHERE name = 'Mejeri, ost & ägg' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Mjölk', id FROM `Category` WHERE name = 'Mejeri, ost & ägg' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Filmjölk & Yoghurt', id FROM `Category` WHERE name = 'Mejeri, ost & ägg' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Mellanmål & desserter', id FROM `Category` WHERE name = 'Mejeri, ost & ägg' AND parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Bröd & Kakor > Knäckebröd & Skorpor
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Knäckebröd', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Knäckebröd & Skorpor'
|
||||
-- ── NIVÅ 2: under Skafferi ──────────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Kryddor & smaksättare', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Pasta, ris & matgryn', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Oliver & delikatesser', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Konserver & burkar', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Asien', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Torkad frukt', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Torra baljväxter', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`) SELECT 'Bakning', id FROM `Category` WHERE name = 'Skafferi' AND parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Bröd & Kakor > Bröd ──────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Matbröd', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Bröd'
|
||||
WHERE c1.name = 'Bröd & Kakor' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Bröd & Kakor > Kex & Kakor
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Söta kex & kakor', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Bröd & Kakor > Kex & Kakor ───────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Matkex', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kex & Kakor'
|
||||
WHERE c1.name = 'Bröd & Kakor' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Söta kex & kakor', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kex & Kakor'
|
||||
WHERE c1.name = 'Bröd & Kakor' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Färdigmat > Såser, grytbaser & övriga smaksättare
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Kylda såser', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Bröd & Kakor > Knäckebröd & Skorpor ──────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Knäckebröd', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Knäckebröd & Skorpor'
|
||||
WHERE c1.name = 'Bröd & Kakor' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Färdigmat > Såser, grytbaser... ───────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Dressing & övriga smaksättare', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Såser, grytbaser & övriga smaksättare'
|
||||
WHERE c1.name = 'Färdigmat' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Kylda såser', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Såser, grytbaser & övriga smaksättare'
|
||||
WHERE c1.name = 'Färdigmat' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Fryst > Färdigmat
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Pizza, paj & piroger', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Färdigmat'
|
||||
-- ── NIVÅ 3: under Färdigmat > Gratäng & Röror mm ────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Krämiga sallader', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Gratäng & Röror mm'
|
||||
WHERE c1.name = 'Färdigmat' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Fryst > Bageri ────────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Bröd & fikabröd', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Bageri'
|
||||
WHERE c1.name = 'Fryst' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Fryst > Grönsaker & kryddor
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Grönsaker', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Fryst > Grönsaker & kryddor ───────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Kryddor', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker & kryddor'
|
||||
WHERE c1.name = 'Fryst' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Grönsaker', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker & kryddor'
|
||||
WHERE c1.name = 'Fryst' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Frukt & Grönt > Grönsaker
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Bönor & Groddar', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Paprika', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Övriga grönsaker', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Tomater', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färdigskuret', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
-- ── NIVÅ 3: under Fryst > Färdigmat ─────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Pizza, paj & piroger', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Färdigmat'
|
||||
WHERE c1.name = 'Fryst' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Frukt & Grönt > Potatis & rotsaker
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Rotsaker', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Frukt & Grönt > Potatis & rotsaker ────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Lök', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Potatis & rotsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Rotsaker', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Potatis & rotsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Frukt & Grönt > Frukt
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Druvor', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Frukt & Grönt > Kryddor & smaksättare ─────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Smaksättare', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kryddor & smaksättare'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Frukt & Grönt > Grönsaker ─────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Bönor & Groddar', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Paprika', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Övriga grönsaker', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Tomater', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färdigskuret', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Grönsaker'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Frukt & Grönt > Frukt ─────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Druvor', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Frukt'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Citrusfrukt', c2.id
|
||||
FROM `Category` c1
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Citrusfrukt', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Frukt'
|
||||
WHERE c1.name = 'Frukt & Grönt' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Glass, godis & snacks > Choklad
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Chokladkakor & rullar', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Glass > Chips, snacks & dip ───────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Chips', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Chips, snacks & dip'
|
||||
WHERE c1.name = 'Glass, godis & snacks' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Glass > Choklad ───────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Chokladkakor & rullar', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Choklad'
|
||||
WHERE c1.name = 'Glass, godis & snacks' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Kött, chark & fågel > Kött
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färdiglagat & pannfärdigt', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Kött, chark & fågel > Pålägg ──────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Skivat pålägg', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Pålägg'
|
||||
WHERE c1.name = 'Kött, chark & fågel' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Kött, chark & fågel > Korv ────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Ölkorv', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Korv'
|
||||
WHERE c1.name = 'Kött, chark & fågel' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Kött, chark & fågel > Kött ────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färdiglagat & pannfärdigt', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kött'
|
||||
WHERE c1.name = 'Kött, chark & fågel' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fläsk', c2.id
|
||||
FROM `Category` c1
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fläsk', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kött'
|
||||
WHERE c1.name = 'Kött, chark & fågel' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Kött, chark & fågel > Fågel
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fryst fågel', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Kött, chark & fågel > Fågel ───────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fryst fågel', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Fågel'
|
||||
WHERE c1.name = 'Kött, chark & fågel' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Mejeri, ost & ägg > Ost
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Matlagningsost', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Mejeri, ost & ägg > Ost ───────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färskost', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Ost'
|
||||
WHERE c1.name = 'Mejeri, ost & ägg' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Dessertost', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Ost'
|
||||
WHERE c1.name = 'Mejeri, ost & ägg' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Matlagningsost', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Ost'
|
||||
WHERE c1.name = 'Mejeri, ost & ägg' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Skafferi > Torra baljväxter
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fröer & kärnor', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Torra baljväxter'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
-- ── NIVÅ 3: under Mejeri, ost & ägg > Mjölk ─────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Standardmjölk', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Mjölk'
|
||||
WHERE c1.name = 'Mejeri, ost & ägg' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Skafferi > Bakning
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Baktillbehör', c2.id
|
||||
FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Bakning'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
-- ── NIVÅ 3: under Mejeri, ost & ägg > Filmjölk & Yoghurt ────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Filmjölk', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Filmjölk & Yoghurt'
|
||||
WHERE c1.name = 'Mejeri, ost & ägg' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Skafferi > Kryddor & smaksättare
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Övriga smaksättare', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Skafferi > Kryddor & smaksättare ──────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Sås, dressing & majonnäs', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kryddor & smaksättare'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Kryddor', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kryddor & smaksättare'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Övriga smaksättare', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Kryddor & smaksättare'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Skafferi > Pasta, ris & matgryn
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Pasta', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Skafferi > Pasta, ris & matgryn ───────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Färsk pasta', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Pasta, ris & matgryn'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Pasta', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Pasta, ris & matgryn'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Skafferi > Konserver & burkar
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fruktkonserver', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Skafferi > Oliver & delikatesser ──────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Delikatesser', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Oliver & delikatesser'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Skafferi > Konserver & burkar ─────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Tomatkonserver', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Konserver & burkar'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Grönsakskonserver', c2.id
|
||||
FROM `Category` c1
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fruktkonserver', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Konserver & burkar'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fisk-& skaldjurskonserver', c2.id
|
||||
FROM `Category` c1
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Grönsakskonserver', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Konserver & burkar'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fisk- & skaldjurskonserver', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Konserver & burkar'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
|
||||
-- LEVEL 3 — under Skafferi > Asien
|
||||
INSERT IGNORE INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Nudlar', c2.id
|
||||
FROM `Category` c1
|
||||
-- ── NIVÅ 3: under Skafferi > Asien ──────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Såser & grytbaser', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Asien'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Nudlar', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Asien'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Skafferi > Torra baljväxter ───────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Fröer & kärnor', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Torra baljväxter'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
|
||||
-- ── NIVÅ 3: under Skafferi > Bakning ────────────────────────
|
||||
INSERT INTO `Category` (`name`, `parentId`)
|
||||
SELECT 'Baktillbehör', c2.id FROM `Category` c1
|
||||
JOIN `Category` c2 ON c2.parentId = c1.id AND c2.name = 'Bakning'
|
||||
WHERE c1.name = 'Skafferi' AND c1.parentId IS NULL;
|
||||
|
||||
|
||||
-- ============================================================
|
||||
|
||||
Reference in New Issue
Block a user