Mailinglisten-Archive |
Henning Jödden schrieb: > Tach zusammen, > > Eigentlich hört es sich garnicht so schwer an. Doch ich komme irgendwie > auf keinen grünen Zweig. > > gegeben sei eine Tabelle mit zwei Keys c_id und ev_id. Beide können > doppelt vorkommen jedoch kann niemals eine komplette Reihe identisch > sein (also c_id *und* ev_id gleich). > Ich möchte nun wissen wieviele c_id's, die z.B. ev_id=1 haben auch mit > ev_id=2 eingetragen sind. > > Ein einfaches Beispiel: > > +-------+-------+ > | c_id | ev_id | > +-------+-------+ > | 10 | 1 | > +-------+-------+ > | 15 | 1 | > +-------+-------+ > | 10 | 2 | > +-------+-------+ > | 20 | 2 | > +-------+-------+ > > Wenn die Tabelle so aussähe und ich die Anzahl der c_id's suche, die > ausser in ev_id=1 noch in ev_id=2 eingetragen sind bräuchte ich als > Ergebnis folgendes: > > +-------+-------+ > | ev_id | count | > +-------+-------+ > | 2 | 1 | > +-------+-------+ > > Ist dies in einer Abfrage möglich? Ja, mit COUNT(), WHERE, GROUP BY und HAVING SELECT c_id, COUNT(c_id) AS `anzahl` FROM `table` WHERE ev_id IN (1,2) GROUP BY c_id HAVING `anzahl` > 1 c_id anzahl 10 2 oder so ähnlich, habs nicht probiert -- Sebastian Mendel www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive