sql >> Databasteknik >  >> RDS >> Mysql

skapa trädvy looping fråga

På det sätt som du lagrade trädet nu är det inte möjligt att få hela trädet i en ren SQL-fråga. Du måste skriva en loop på något annat språk (C#, lagrad procedur som stöder loopar, ...) för att hämta trädet.

Detta är en trevlig artikel som beskriver hur du arbetar med ditt sätt att förvara trädet (inklusive att hämta trädet och ta bort föremål från trädet).

Ännu mer intressant, den artikeln beskriver också ett sätt att lagra träd i en databastabell som gör gör det möjligt att hämta hela trädet i en enda fråga. Den heter förbeställningsträdövergång . Du kan slå upp den för mer information. Jag har hittat en C#-implementering . Det innebär lite mer logik än det du använder nu, men är mer presterande för alla utom de minsta träden.




  1. Hur man använder vyer i en MySQL-databas

  2. Hur Sinh() fungerar i PostgreSQL

  3. Konvertera "datetimeoffset" till "smalldatetime" i SQL Server (T-SQL-exempel)

  4. MySQL heltals osignerade aritmetiska problem?