Hallo Leute,
ich habe eine kleine MYSQL-Datenbank und davor eine PHP-Plattform. Dabei gibt es immer wieder mal Übersichten zu programmieren.
Szenario: Ich möchte eine Liste aller Benutzer erstellen und zu jedem Benutzer wissen, wieviele Artikel er geschrieben hat und wieviele Freunde er hat ...
Jetzt habe ich 2 Arten, wie ich das programmieren kann:
Ich mache einen großen SQL
SELECT *,
(SELECT count(*) FROM FRIENDS f WHERE b.uid = f.uid) AS FRIENDS,
(SELECT count(*) FROM ARTIKEL a WHERE b.uid = a.uid) AS ARTIKEL,
FROM BENUTZER b
ODER ich hole alle Benutzer raus, loope darüber und führe für jeden Benutzer die beiden Subselects aus.
Welche der beiden Arten ist denn am schnellsten bzw. empfehlenswertesten oder gibt es noch eine andere Möglichkeit den SQL aufzubauen - ich hab da an JOINs gedacht, aber dafür hab ich einfach kein Händchen.
LG Nikolas