AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL Max-Abfrage Feld nicht gefunden
Thema durchsuchen
Ansicht
Themen-Optionen

SQL Max-Abfrage Feld nicht gefunden

Ein Thema von oldie · begonnen am 23. Mär 2008 · letzter Beitrag vom 23. Mär 2008
Antwort Antwort
Seite 1 von 2  1 2      
oldie

Registriert seit: 18. Jul 2006
36 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1

SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 08:30
Datenbank: Paradox • Zugriff über: BDE
Hallo,

wie komme ich nach dieser Abfrage

select TrZeitPerIndex, max(TrZeitTime) from TableName where TrZeitAufIndex>0 group by TrZeitPerIndex an die TrZeitTime ? Es kommt der Fehler Feld TrZeitTime nicht gefunden. Wenn ich TrZeitTime zusätzlich hinzufüge werden natürlich alle Personen mehrfach angezeigt.

Gruß
Oldie
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 08:35
Probiers mal so:
select TrZeitPerIndex, max(TrZeitTime) from TableName group by TrZeitPerIndex having TrZeitAufIndex>0
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 09:01
Moin,

durch die Aggregatfunktion erhält das Feld einen internen Namen. Du kannst es über seinen Feldindex ansprechen oder einen Aliasnamen vergeben:

SQL-Code:
SELECT TrZeitPerIndex, MAX(TrZeitTime) AS TrZeitTime
FROM TableName
WHEREe TrZeitAufIndex > 0
GROUP BY TrZeitPerIndex
Frohe Ostern
  Mit Zitat antworten Zitat
oldie

Registriert seit: 18. Jul 2006
36 Beiträge
 
Delphi 10.1 Berlin Professional
 
#4

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 09:05
@Bernhard Geyer
hat leider einen Fehler zur Folge. "Capability not supported"

@marabu
genau so gehts

Danke Euch
  Mit Zitat antworten Zitat
oldie

Registriert seit: 18. Jul 2006
36 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 09:42
jetzt habe ich noch eine zuätzliche Frage

wie füge ich den Ergebnisdatensätzen weiter Felder hinzu ohne das Ergebis zu verändern?

Weitere Felder im Select-Bereich erweitern die Ergebnisliste .
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 09:45
Zitat:
wie füge ich den Ergebnisdatensätzen weiter Felder hinzu ohne das Ergebis zu verändern?

Weitere Felder im Select-Bereich erweitern die Ergebnisliste .
Hä? Du willst das Ergebnis erweitern ohne sie zu erweitern
Markus Kinzler
  Mit Zitat antworten Zitat
oldie

Registriert seit: 18. Jul 2006
36 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 09:55
Ok etwas genauer
Delphi-Quellcode:
SELECT TrZeitPerIndex, MAX(TrZeitTime) AS TrZeitTime
FROM TableName
WHEREe TrZeitAufIndex > 0
GROUP BY TrZeitPerIndex
findet pro Person den Datensatz mit der größten Zeit. Das ist OK.
In diesem Datensatz befinden sich noch weitere Felder. Auf diese möchte ich auch zugreifen.

Delphi-Quellcode:
SELECT TrZeitPerIndex, MAX(TrZeitTime) AS TrZeitTime, Feld1, Feld2,
FROM TableName
WHEREe TrZeitAufIndex > 0
GROUP BY TrZeitPerIndex
dies hat zur Folge, dass Personen doppelt angezeigt werden.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 10:02
Jetzt verstehe ich deine Frage.
Welches Feld1, Feld2 willst du? (von welchem der zusammengefassten Datensätze?)
SQL-Code:
SELECT
    TrZeitPerIndex, MAX(TrZeitTime) AS TrZeitTime, MIN( Feld1), MIN(( Feld2)
FROM
    TableName
WHERE
     TrZeitAufIndex > 0
GROUP BY
    TrZeitPerIndex;
Markus Kinzler
  Mit Zitat antworten Zitat
oldie

Registriert seit: 18. Jul 2006
36 Beiträge
 
Delphi 10.1 Berlin Professional
 
#9

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 10:14
von ursprünglichen Abfrage
Delphi-Quellcode:
SELECT
    TrZeitPerIndex, MAX(TrZeitTime) AS TrZeitTime
FROM
    TableName
WHERE
     TrZeitAufIndex > 0
GROUP BY
    TrZeitPerIndex;
Delphi-Quellcode:
SELECT
    TrZeitPerIndex, MAX(TrZeitTime) AS TrZeitTime, MIN( Feld1) AS Feld1, MIN( Feld2) AS Feld2
FROM
    TableName
WHERE
     TrZeitAufIndex > 0
GROUP BY
    TrZeitPerIndex;
verändert die Anzahl der gefundenen Datensätze
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: SQL Max-Abfrage Feld nicht gefunden

  Alt 23. Mär 2008, 10:16
Das dürfte eigentlich nicht die Anzahl der Datensätze verändern, da ja alle mit identischen TrZeitPerIndex zu einem Datensatz verschmolzen wird.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18:44 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