Dus de waarden van tabel 2, gegroepeerd per gebruiker.
Wat voor database-engine hebben deze tabellen? Ik neem aan dat we het hebben over MySQL? Is dit MyISAM, of InnoDB? Wanneer je een echte relationele database wilt maken is InnoDB waarschijnlijk geschikter omdat je daarmee echt verbanden tussen tabellen kunt aanmaken (foreign keys enzo).
Als de tabellen InnoDB gebruiken en je tabel2.id_gebruiker als foreign key definieert wordt er automatisch een index op aangemaakt, wat zorgt voor snelle lookup.
Voor het geval de tabellen MyISAM zijn loont het de moeite om een index aan te maken op tabel2.id_gebruiker, maar beter zou zijn dat je InnoDB gebruikt, want met MyISAM hangen deze tabellen toch een beetje als los zand aan elkaar en is de kans groot dat er data blijft hangen bij DELETE acties enzo. Het is een stuk makkelijker om referentiële integriteit (onderlinge kloppendheid van data tussen tabellen) te behouden als je hele strakke regels hebt omtrent de verbanden tussen de tabellen, wat vele malen makkelijker te bereiken is met InnoDB.
Het betreft hier een InnoDB.
De tabellen zijn in de database niet rechtstreek aan elkaar gekoppeld. Maar persoonlijk denk ik dat het komt omdat ik door de while loop 1000+ queries naar de database stuur.
Is het niet mogelijk dat ik in één query alle data van tabel2 ophaal op basis van het id uit tabel 1 en die allemaal daarna toon? Dat scheelt al behoorlijk wat opvragingen.