title image


Smiley SQL-Abfrage für Könner
Hallo Leute,

vielleicht kann mir ja einer von euch helfen.

Ich habe zwei Tebellen Projekte und Bemerkungen. Hier eine vereinfachte Darstellung.

Projekt(ProjID, Projektname, Anlegender)

Bemerkung(BemID, ProjID, Bemerkung, Datum)

Die Tabellen sind über die ProjID 1:n verknüpft.



Jetzt brauche ich pro Anlegenden die Anzahl der Projekte deren letzte Bemerkung älter als 3 Monate ist.



Was ich schon habe:

Basisabfrage ist simpel:

SELECT Projekt.Anlegender, Count(Projekt.ProjID) AS Projekte

FROM Projekt INNER JOIN Bemerkung ON Projekt.ProjID = Bemerkungen.ProjID

WHERE Bemerkung.Datum
GROUP BY Projekt.Anlegender;



Zum eingrenzen auf die jeweils letzte Bemerkung eines Projektes benutze ich eine Unterabfrage in der WHERE-Klausel:

(Bemerkung.BemID In (SELECT TOP 1 Bemerkung1.BemID

FROM Bemerkung AS Bemerkung1

WHERE Bemerkung1.ProjID = Projekt.ProjID

ORDER BY Bemerkung1.Datum DESC))



Soweit läuft auch alles ganz gut.

Nur kommt es vor das mir die Unterabfrage mir für ein Projekt zwei oder mehr Bemerkungen zurückgibt. Das kommt wen mehrere Bemerkungen das gleiche letzte Datum haben.

Fällte irgend jemanden was dazu ein? Vielleicxht geht es auch viel einfacher.



Ich Nutze Access2002(XP) Frontend und Backend.

Schonmal Danke fürs lesen und ich hoffe ich hab mich verständlich ausgedrückt.

Mike_F
There're only 10 types of people in the world:
Those who understand binary and those who don't.

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: