Niet selecteren wanneer een verwijzing
Misschien een vage titel, maar hier gaat ie dan. Ik (of eigenlijk een vriend van me) heeft deze tabel structuur:
Nu dan het probleem. Wat hij eigenlijk wil is dat wanneer de record van het nummer: nrOrigineel een nrOrigineel heeft, moet die record niet weergegeven worden.
Een voorbeeld: Wanneer je record nr. 3 selecteerd, dan heeft record 3 een nrOrigineel van 1. De code moet dan kijken of record 1 een nrOrigineel heeft, als dat het geval is, dan moet die record die naar de nrOrigineel record verwees niet weergegeven worden (in dit geval zal record 3 gewoon weer gegeven moeten worden, omdat record 1 NULL is (en niet een getal)).
Iemand een idee hoe dit te realiseren is? Of misschien een andere tabelstructuur (of extra tabellen voor parents o.i.d.?)
Code (php)
1
2
3
4
5
6
2
3
4
5
6
Nr Titel NrOrigineel
----------------------------
1 titel1 NULL
2 titel2 NULL
3 titel3 1
4 titel4 2
----------------------------
1 titel1 NULL
2 titel2 NULL
3 titel3 1
4 titel4 2
Nu dan het probleem. Wat hij eigenlijk wil is dat wanneer de record van het nummer: nrOrigineel een nrOrigineel heeft, moet die record niet weergegeven worden.
Een voorbeeld: Wanneer je record nr. 3 selecteerd, dan heeft record 3 een nrOrigineel van 1. De code moet dan kijken of record 1 een nrOrigineel heeft, als dat het geval is, dan moet die record die naar de nrOrigineel record verwees niet weergegeven worden (in dit geval zal record 3 gewoon weer gegeven moeten worden, omdat record 1 NULL is (en niet een getal)).
Iemand een idee hoe dit te realiseren is? Of misschien een andere tabelstructuur (of extra tabellen voor parents o.i.d.?)
Gewijzigd op 01/01/1970 01:00:00 door GaMer B
Gesponsorde koppelingen:
De structuur is goed, niks meer aan doen.
Dit kun je niet met een gewoon stukje SQL oplossen, je hebt een recursieve functie nodig. Dat kan een stored procedure zijn (bv. in PostgreSQL of MySQL versie 5) en anders een functie in PHP.
Dit kun je niet met een gewoon stukje SQL oplossen, je hebt een recursieve functie nodig. Dat kan een stored procedure zijn (bv. in PostgreSQL of MySQL versie 5) en anders een functie in PHP.



