PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : stehe auf dem schlauch bei mysql abfrage



shb
10-07-2010, 16:09
hallo leute,

ich habe eine kleines problem mit einer abfrage. ich habe eine kalender in mysql gespeichert der aus mehrern tabellen zusammen gesetzt werden.
ich habe eine tabelle mit den personal daten wie name, vorname und was man sonst noch so alles braucht
dann habe ich eine zweite tabelle mit den kalenderdaten, sprich wer wann was macht. das wer ist eine id die auf die personal tabelle zeigt, dass man die namen nicht mehrfach speichert, ist ja klar und dann hab ich das ganze mit einem left join verbunden.

select kalender.id,personal.name,datum,pers,kalender.dien st,zug,dze from personal left join kalender on personal.id = kalender.pers where dze > "2010-12-01" and (datum like "2010-12-%" or datum is null) order by personal.name, kalender.datum;

und hier liegt auch irgendwo der hase im pfeffer begraben, wenn diese person noch gar keinen kalender eintrag hat wird dieser mit dem wert NULL dargestellt, so stelle ich mir das ganze auch vor. hat nun aber schon jemand einen eitrag in einem anderen monat wird diese person garnicht angezeigt, aber ich möchte, dass diese person dann auch mit NULL angzeigt wird, da diese person ja da ist nur nichts zu tun hat.

ich hoffe, dass ihr mein problem versteht und mir sagt wo der fehler liegt


thx cu SHB

msi
12-07-2010, 00:01
so könnts gehen:



select kalender.id,personal.name,datum,pers,kalender.dien st,zug,dze
from personal
left join kalender on
personal.id = kalender.pers and
dze > "2010-12-01" and
(datum like "2010-12-%" or datum is null)
order by personal.name, kalender.datum;


oder halt so:



create view aktueller_kalender as
select * from kaleder
where
dze > "2010-12-01" and
(datum like "2010-12-%" or datum is null)


select kalender.id,personal.name,datum,pers,kalender.dien st,zug,dze from personal left join aktueller_kalender on personal.id = kalender.pers order by personal.name, kalender.datum