29. November 200718 j Hallo zusammen, bin gerade dabei eine Oracle DB auf MySQL zu migrieren. Dabei muss ich nun ein Statement umschreiben, dass in Oracle SQL mit "... starts with ... connect by.." formuliert wurde. Gibts in MySQL dazu ein äquivalent? Oder kann man sowas auch anders Umschreiben? Danke und Gruß, Markus
29. November 200718 j z.b. als als SELF JOIN - das ist hier wie ich meine sehr schön beschrieben: MySQL AB :: Managing Hierarchical Data in MySQL s'Amstel
29. November 200718 j Hi Amstel, danke für den Link.. Wenn ich das richtig verstehe, muss ich aber bei dem vorgehen mit dem Self Join vorher schon genau wissen, wieviele "Ebenen" mein Baum hat, oder? z.b. (Code aus dem Link von oben): SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4 FROM category AS t1 LEFT JOIN category AS t2 ON t2.parent = t1.category_id LEFT JOIN category AS t3 ON t3.parent = t2.category_id LEFT JOIN category AS t4 ON t4.parent = t3.category_id WHERE t1.name = 'ELECTRONICS'; Das geht nur für mit 4 Ebenen tiefen Bäumen... Wie mach ich das für eine beliebige Tiefe...? Viele Grüße, Markus
29. November 200718 j bei komplexeren statements würde ich da eher auf procedures übergehen. s'Amstel
13. Dezember 200717 j Hi s'Amstel, wenn ich das ganze mit einer procedure mache, dann werden aber auch N-Select Statements abgesetzt..? Scheint mir nicht wirklich eine effiziente Lösung zu geben in MySQL.. Viele Grüße, Markus
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.