sql >> Databasteknik >  >> RDS >> Mysql

Hur man gör ett rekursivt jag med i MySQL

Det finns inget riktigt sätt (åtminstone jag känner till) att göra en "rekursiv" join i MySQL. Om du har en sådan tabellstruktur är den bästa lösningen jag känner till att använda lagrade procedurer för att gå igenom och "samla" relaterade rader och/eller bygga "sökvägar"; tyvärr kan du inte gå med i resultaten av en lagrad procedur, så det betyder vanligtvis att den släpper den data i en förutbestämd temporär tabell som ska användas efter att proceduren har körts.

Alternativt kan du analysera den rekursiva tabellen i kod för att bestämma dess nuvarande "djup" för att komponera frågan programmatiskt.




  1. mysql-fel 'TYPE=MyISAM'

  2. MySQL-syntaxfel för lagrad procedur efter BEGIN

  3. Återställ rotlösenordet för MySQL

  4. Flera finns inte i MYSQL för att kontrollera antalet rader