AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Probleme bei SQL Abfrage mit drei Tabellen und Max(Datum)

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

Ein Thema von sunfy · begonnen am 9. Mai 2004 · letzter Beitrag vom 9. Mai 2004
Antwort Antwort
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
Robert_G
(Gast)

n/a Beiträge
 
#2

Re: Probleme bei SQL Abfrage mit drei Tabellen und Max(Datum

  Alt 9. Mai 2004, 17:03
Deine Aggregatfunktion ist "MAX".
Das hier sollte gehen (Du musst nach P.Pers_Name & P.Pers_Vorname gruppieren):
SQL-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
         ,P.Pers_Name
         ,P.Pers_Vorname
ORDER BY 1 Desc
         ,P.Pers_Name
         ,P.Pers_Vorname
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz