håller på med ett CMS som har en meny (surprice!!) En SQL sats:menynavigation
alla rader i databasen (sidor) som finns har ett fält ('parent') som definierar vart sidan skall ligga i menyn där '0' är roten i menyn och allt ovanför blid då automatiskt undersidor till sidor i roten.
Sida1
Sida2
Undersida1
Undersida2
Underundersida1
Underundersida2
Undersida3
Sida3
Och frågan lyder: Hur skall jag skriva SQLen till menyn?
Så här:
"SELECT alla fält jag behöver FROM content WHERE parent = 0"
och i loopen utföra ytterligare
"SELECT alla fält jag behöver FROM content WHERE parent = RS(0)"
Och hur gör jag en restriktion att det får förekomma max 2 subnivåer?
Jag vill helst att EN SQL skall lösa det, äver om det innebär att jag får lägga till fält i databasen,
Helst vill jag INTE att man skall ta med någon querystring förutom ID när jag hämtar informationen.Sv: menynavigation
SELECT Level1.MenuId AS Level1Id,
Level1.MenuText AS Level1Text,
Level2.MenuId AS Level2Id,
Level2.MenuText AS Level2Text,
Level3.MenuId AS Level3Id,
Level3.MenuText AS Level3Text
FROM (Menu AS Level1 LEFT JOIN
Menu AS Level2 ON Level1.MenuId = Level2.MenuParent) LEFT JOIN
Menu AS Level3 ON Level2.MenuId = Level3.MenuParent
ORDER BY Level1.MenuText,
Level2.MenuText,
Level3.MenuText
Jag ser det snyggare löst med recurssion.