Limit + COUNT bei Join
SQl
- datenbank
0 Christopher0 SQl
0 Ilja
Hey.
Ich verwende derzeit PGSQL.
Ich möchte im Rahmen einer Bilderverwaltung folgendes machen:
users_picscollection:
collectionid, collectionname, userid
1 , test, 2
2, test2, 2
users_picscollection_pics:
collectionid, picname
1, jojo
2, jojo2
3, jojo3
4, hihi1
5, hihi2
Ich habe: die userid
Ich möchte nun folgendes haben:
SELECT t1.collectionid, t1.collectionname,COUNT(t2.picname), t2.picname
FROM schemaname.users_picscollection AS t1
JOIN schemaname.users_picscollection_pics AS t2 ON t2.collectionid=t1.collectionid
WHERE t1.uid=".intval($uid)
klappt nicht. Kein Ergebnis, kein Fehler komischerweise auch.
Gruß.
Hallo,
[..]
t1.uid=".intval($uid)
Sollte das nicht userid lauten?
Und warum moechtest du fuer jeden gefundenen Eintrag die Anzahl aller Eintraege auslesen?
Gruesze,
Christopher
Hallo,
[..]
t1.uid=".intval($uid)
Sollte das nicht userid lauten?
Nein. Die ID kommt ja von außen.
Und warum moechtest du fuer jeden gefundenen Eintrag die Anzahl aller Eintraege auslesen?
Es geht um ein Fotoalbum und ich möchte von jedem Fotoalbumd ie Anzahl der darin enthaltenen Fotos haben und ein Foto als Vorschaubild.
yo,
klappt nicht. Kein Ergebnis, kein Fehler komischerweise auch.
ich hätte getippt, du benutzt mysql, weil jedes vernüftige dbms würde bei dieser abfrage eine fehlermeldung auswerfen, da in dieser konstellation die GROUP BY klausel fehlt. zu klären wäre noch welchen einzigen bildnamen du den willst, fvon den mögliche. aber hier mal ein beispiel:
SELECT t1.collectionid, t1.collectionname, COUNT(*) Anzahl, MIN(t2.picname) Bild
FROM users_picscollection AS t1
INNER JOIN users_picscollection_pics AS t2 ON t2.collectionid=t1.collectionid
WHERE t1.uid= hier_ID_variable
GROUP BY t1.collectionid
;
Ilja