sql >> Databasteknik >  >> RDS >> Mysql

MySQL alla förälder-barn-relationer

Med MySQL är det enklaste sättet jag gör detta att lagra alla sökvägar i trädet, vilket skapar en transitiv stängning .

table_children
parent child
0      0
1      1
2      2
3      3
4      4
0      1
0      2
0      3
0      4
1      2
1      3
1      4
3      4

Nu kan du fråga det så här:

SELECT t.*
FROM table_children c
JOIN table t ON c.child = t.id
WHERE c.parent = 0;

Se även:



  1. Fel 508 - Resursgränsen är nådd (php+mysql+jquery) webbplats

  2. Sammanfogar två liknande tabeller i MySQL

  3. R12.2 Bestämning och konfiguration av upplaga

  4. SQL Server CASE-uttryck