Mailinglisten-Archive |
ANGEL Harald schrieb: > Ich weiß der Topicname is blöd, mir ist aber nichts besseres eingefallen. > > Ich hab diese Tabelle: > > bilder_user man sollte immer Einzahl verwenden für Tabellen-Namen, ist kürzer, und das mehrere Datensätze in einer Tablle sind ist ja klar .. ;-) bild_user > - id > - bildid > - userid > > -> da sind also alle bilder - zu - user kombinationen gespeichert. Also alle user, die auf dem bild zu sehen sind. Einträge schauen dann so aus: > > Id bildid userid > 1 1 1 > 2 1 2 > 3 1 5 > 4 2 3 > 5 2 2 > > Klaro... > Meine anforderung ist jetzt, dass ich mit einem select alle bildids bekomme, auf denen der user mit der userid "2" und "1" gemeinsam drauf sind... Sollte also nur bildid "1" ausspucken. > > Schaff ich das überhaupt mit einem SELECT? > > Danke für Hilfe.. Ich zermarter mir da meinen Kopf und komm ned drauf... SELECT `bildid`, COUNT(DISTINCT `userid`) AS `usercount` FROM `bilder_user` WHERE `userid` IN ([meine user]) GROUP BY `bildid` HAVING `usercount` > [anzahl meiner user] also z. B.: SELECT `bildid`, COUNT(DISTINCT `userid`) AS `usercount` FROM `bilder_user` WHERE `userid` IN (33,85,101) GROUP BY `bildid` HAVING `usercount` > 3 -- Sebastian Mendel www.sebastianmendel.de
php::bar PHP Wiki - Listenarchive