Ich schreib gerade einen Job, der bei Ausführung anhand einer Tabelle meiner Datenbank einen Kategoriebaum Generieren soll.
Meine Tabelle enthält folgende Werte: KategorieID (ID der ArtikelKategorie), ParentId (ID des Elternteils), name, Magento_ID (Sobald ich dem Kategoriebaum in Magento etwas hinzufüge, weißt Magento diesem eine eigene Magento ID zu, deswegen muss ich die generierte Magento_ID auslesen um sie mit der richtigen AritkelKategorie zu verknüpfen.
Leider will das noch nicht ganz klappen.
Ich hab mir dieses SQL query ausgedacht:
SELECT k1.*, k3.Magento_ID as magento_id_parent FROM dbo.MagentoKategoriebaum k1, dbo.MagentoKategoriebaum k3
WHERE k1.parentId = k3.KategorieID
AND k1.Magento_ID is NULL
AND (k1.parentId = 0
OR (SELECT Magento_ID FROM dbo.MagentoKategoriebaum k2
WHERE k1.parentId = k2.KategorieID) IS NOT NULL)
Das prob dabei ist, das es mir die Eltern zu beginn mit Kategorie_ID 0 nicht anzeigt. SObald diese eine Magento_ID zugewiesen bekommen haben funktioniert alles.
Frage
pandaRage
Moin
Ich schreib gerade einen Job, der bei Ausführung anhand einer Tabelle meiner Datenbank einen Kategoriebaum Generieren soll.
Meine Tabelle enthält folgende Werte: KategorieID (ID der ArtikelKategorie), ParentId (ID des Elternteils), name, Magento_ID (Sobald ich dem Kategoriebaum in Magento etwas hinzufüge, weißt Magento diesem eine eigene Magento ID zu, deswegen muss ich die generierte Magento_ID auslesen um sie mit der richtigen AritkelKategorie zu verknüpfen.
Leider will das noch nicht ganz klappen.
Ich hab mir dieses SQL query ausgedacht:
SELECT k1.*, k3.Magento_ID as magento_id_parent FROM dbo.MagentoKategoriebaum k1, dbo.MagentoKategoriebaum k3
WHERE k1.parentId = k3.KategorieID
AND k1.Magento_ID is NULL
AND (k1.parentId = 0
OR (SELECT Magento_ID FROM dbo.MagentoKategoriebaum k2
WHERE k1.parentId = k2.KategorieID) IS NOT NULL)
Das prob dabei ist, das es mir die Eltern zu beginn mit Kategorie_ID 0 nicht anzeigt. SObald diese eine Magento_ID zugewiesen bekommen haben funktioniert alles.
Jemand eine Idee?
Link zu diesem Kommentar
Auf anderen Seiten teilen
2 Antworten auf diese Frage
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.