Einzelnen Beitrag anzeigen

sunfy

Registriert seit: 27. Apr 2004
22 Beiträge
 
#1

Probleme bei SQL Abfrage mit drei Tabellen und Max(Datum)

  Alt 9. Mai 2004, 16:07
Hallo,
Ich habe ein Problem mit meiner SQL Abfrage:
Es gibt drei Tabellen
1. Person
2. Pers_b_Kath1
3. Kathegorie1

Jetzt möchte ich alle Personen mit dem größten Datum des Ereignises aus Kath1 ausgeben.

Als erstes habe ich einen SQL-Befehl, der mir alle PersonenID´s mit den jeweiligen max-Datums durch die Verknüpfung von Tabelle 2 und 3 ausgibt.
Diese funzt auch wunderbar:
Code:
SELECT max( Kath1_Datum ) , Pers_ID, Pers_Name, Pers_Vorname
FROM  Kathegorie1 K,
       Pers_b_Kath1  P
 
WHERE K.Kath1_ID = P.Kath1_ID
GROUP BY Pers_ID
ORDER BY 1 Desc, P.Pers_Name, P.Pers_Vorname
Doch wenn ich das ganze jetzt noch mit der 1. Tabelle Personen verknüpfen möchte klappt das nicht.
Code:
SELECT max( Kath1_Datum ), P.Pers_ID, P.Pers_Name, P.Pers_Vorname
FROM  Kathegorie1 K,
       (Person P inner JOIN Pers_b_Kath1 Q ON P.Pers_ID = Q.Pers_ID)

WHERE K.Kath1_ID = Q.Kath1_ID
GROUP BY P.Pers_ID
ORDER BY 1 Desc, P.Pers_Name, P.Pers_Vorname
Bei diesem Code kommt die Fehlermeldung:
Code:
Sie wollten eine Abfrage ausführen, die den angegebenen Ausdruck 'Pers_Name' nicht als Teil der Aggregatfunktion einschließt.
Hat jem. ne Ahnung, woran das liegen könnte, und was ist überhaupt mit der Aggregatfunktion gemeint?

Gruß Sunfy
  Mit Zitat antworten Zitat