phpbar.de logo

Mailinglisten-Archive

Anfängerproblem mit Join

Anfängerproblem mit Join

Martin Rebhan mr at mrebhan.de
Don Jan 9 17:31:23 CET 2003


Ich habe folgende zwei Tabellen, die sich über die
Felder Nr und Mitgliedernr verbinden lassen.

Mitglieder: 
***********************
* Nr * Name * Code *
***********************
* 1 * Maier * A *
***********************
* 2 * Müller * B *
***********************
* 3 * Schmidt * B *
***********************
* 4 * Huber * B *
***********************

Fahrt:
**********************************
* Fahrtnr * Mitgliedsnr * Status *
**********************************
* 1 * 1 * ja *
**********************************
* 1 * 2 * nein *
**********************************
* 2 * 3 * ja *
**********************************
* 2 * 2 * nein *
**********************************


Ich möchte jetzt z.B. für den Code "b" und die Fahrt 1
eine Übersicht erstellen, in der erstmal alle zum Code
b gehörenden Mitglieder angezeigt werden und falls
Zusatzinformationen (also der Status) für die Fahrt
1vorliegen diese angezeigt werden. 

Dies habe ich bisher folgendermaßen versucht zu
realisieren:

select Nr, Name, Code, Fahrtnr, Mitgliedsnr, Status
from Mitglieder left join Fahrt on
Fahrt.Mitgliedsnr=Mitglieder.Nr where ((fahrtnr is
null) or (fahrtnr=1)) and Code='b' order by Name

Als Ergebnis bekomme ich dann:
**************************************
* Fahrt * Nr * Name * Code * Status *
**************************************
* NULL * 4 * Huber * B NULL *
**************************************
* 1 * 2 * Müller * B nein *
**************************************

Das Problem ist jetzt aber das die Nr. 2, Müller fehlt,

weil ja auf Ihn die Bedingung (fahrtnr is null) or
(fahrtnr=1) nicht zutrifft. 
Und genau da liegt das Problem... 
Wie schaff ich es also, dass die ganze Mitgliederliste
angezeigt wird und nur 
falls Zusatzinformationen zur Fahrt vorliegen, diese
mit angezeigt werden?

Ich hoffe es kann mir jemand weiterhelfen, bin nämlich
noch ziemlich neu auf dem Gebiet.

Danke,
Gruß Martin


-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde geschreddert...
Dateiname   : winmail.dat
Dateityp    : application/ms-tnef
Dateigröße  : 3080 bytes
Beschreibung: nicht verfügbar
URL         : http://lists.mushaake.org/pipermail/mysql-de/attachments/20030109/cf2ae821/winmail.bin

php::bar PHP Wiki   -   Listenarchive