Ik heb de volgende database:
p (pagina)
- id
- naam
c (categorie)
- id
- naam
- pid
l (links)
- id
- naam
- cid
Nu wil ik een pagina overzicht tevoorschijn toveren met alle categorieen (ook de lege) met darain de links.
Eerder had ik een while loop van de categorieen met daarin een query voor de links voor die categorie. Als er 10 categorieen zijn, worden er dus 11 queries uitgevoerd. Dit wil ik nu in 1 query hebben als het kan. Immers de database bevat momenteel 300.000 links en het wordt allemaal erg traag.
Ik heb al het een en ander geprobeerd, zoals:
echter haalt hij nu alle links op lijkt wel. Als ik het volgende doe:
haalt hij alleen die categorieen op waarin links staan en niet de categorieen zonder links.
Ik dacht dat de eerste wel goed zou gaan, echter is dta niet het geval.
p (pagina)
- id
- naam
c (categorie)
- id
- naam
- pid
l (links)
- id
- naam
- cid
Nu wil ik een pagina overzicht tevoorschijn toveren met alle categorieen (ook de lege) met darain de links.
Eerder had ik een while loop van de categorieen met daarin een query voor de links voor die categorie. Als er 10 categorieen zijn, worden er dus 11 queries uitgevoerd. Dit wil ik nu in 1 query hebben als het kan. Immers de database bevat momenteel 300.000 links en het wordt allemaal erg traag.
Ik heb al het een en ander geprobeerd, zoals:
MySQL:
1
| SELECT * FROM c,l WHERE c.pid='4093' AND (l.cid=c.id OR c.id<>'0') |
echter haalt hij nu alle links op lijkt wel. Als ik het volgende doe:
MySQL:
1
| SELECT * FROM c,l WHERE c.pid='4093' AND (l.cid=c.id) |
haalt hij alleen die categorieen op waarin links staan en niet de categorieen zonder links.
Ik dacht dat de eerste wel goed zou gaan, echter is dta niet het geval.