Mailinglisten-Archive |
Hi, mit einem LEFT JOIN in der Art, SELECT u.name FROM user u LEFT JOIN berechtigungen r ON u.id=r.EZ_PersID, user u2 LEFT JOIN buchung b ON u2.id=b.UserID WHERE u.id=u2.id im ersten Join verknüpftst du user mit berechtigungen, im zweiten einen Alias von user mit buchungen. Markus ----- Original Message ----- From: "Andreas Schwinger" <phpliste_(at)_interpuls.de> To: "PHP-Liste" <php_(at)_php-center.de> Sent: Monday, July 17, 2000 11:23 PM Subject: [php] MySQLSelect IN Select > > > Hallo Liste, > > ich habe ein kleines Problem - es läuft zwar anhand von while-schleifen und > mehreren SELECT-Abfragen, aber es muß doch irgendwie leichter gehen ... > > Ich habe mehrere Tabelen > > user mit ID, Name, Vorname usw. > buchung mit Buchungsdaten > berechtigung in der verschiede Berechtigungen stehen mit userID (identisch > mit user.ID) > > > ich möchte jetzt alle ausgegeben haben die gebucht haben (also in buchung > stehen) und > bestimmte berechtigungen haben, bzw. dessen ID in berechtigungen.EZ_PersID > steht. > $art ist der Parameter den ich dem Skript uebergebe > (1= anzeigen die gebucht haben, 0=anzeigen die noch nicht gebucht haben) > > > ----- > if ($art=="1") { > $daten=mysql_query("SELECT user.Name FROM user, berechtigung, buchung > WHERE (user.ID=buchung.UserID) AND (user.ID=berechtigung.EZ_PersID)"); > > while($zeile = mysql_fetch_array($daten)) { > > $Nachname=$zeile["Name"]; > echo "$Nachname<br>"; > } > } > ---- > > gibt die richtigen Ergebnisse aus - für die gebuchten mit berechtigung. > > Wie kann ich die Ergebnisse ausgeben die noch nicht gebucht haben aber > berechtigung haben > ($art==0)? > -- > ** Durchgehend geöffnet: http://www.php-center.de ** > Die PHP-Liste: mailto:php_(at)_php-center.de > http://infosoc.uni-koeln.de/mailman/listinfo/php >
php::bar PHP Wiki - Listenarchive