SQL Anweisung zur Selektion eines Monats

Hallo!!!

Stehe vor einer mir unlösbaren Aufgabe. Ziel dieser SELECT Anweisung ist es, aus der Personalliste die Datensätze zu filtern, wo der ‚nrMonat‘ mit dem Geburtsdatum übereinstimmt.

SQLString = „SELECT Personalnummer, Nachname, Vorname, Geburtsdatum FROM Personalliste WHERE Geburtsdatum=’%%.“ & nrMonat & „.%%%%’“

Jedenfalls so funktioniert es nicht.

Kann mir jemand helfen?

MfG, MasterAK

Hallo MasterAK,
es würde wahrscheinlich helfen, wenn du die verwendete Datenbank angibst. Unter Oracle könnte man es z.B. so machen:

SELECT 
 Personalnummer
 ,Nachname
 ,Vorname
 ,Geburtsdatum 
FROM 
 Personalliste 
WHERE 
 to\_char(Geburtsdatum, 'MM') = to\_char(SYSDATE, 'MM')

Du hast doch wohl nicht etwa ein Datum in einem Character-Feld gespeichert?

gruss
bernhard

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Moin, Master,

mit jedem SQL sollte

SELECT Tabelle.datum
FROM Tabelle
WHERE month(datum)=nrMonat;

klappen.

Jetzt musst Du nur noch die Variable nrMonat versorgen :smile:

%%ebbes%% klappt syntaktisch nur, wenn das Datum ein String ist („Gott verhüte!“ sprach der depressive Mafiaboss [Robert de Niro]), geht aber spätestens dann in die Hose, wenn nach dem Juni („06“) gesucht wird und das Jahr „2006“ im Datum vorkommt.

Gruß Ralf

Hallo Ralf!

Ok… Ich schreibe es nochmal ins Forum.

Die Version von Ralf funktioniert genauso.

Da fragt man sich dann, warum man die Lösung nicht selbst gefunden hat. :wink:

Danke, Ralf!

MfG, MasterAK