Ich bekomme es einfach nicht hin;
Ich habe eine Tabelle "Teams" mit den wohl relevanten Feldnamen: "ID", "Datum" und "Team"
Die Tabelle ist nach Datum absteigend sortiert.
Das Problem:
Ich möchte eine Abfrage erstellen, die jeweils die (Datums) letzten 2 Einträge der Teams ausgibt.
Ich selbst bekomme das einfach nicht hin,- funzt wohl nur über eine Unterabfrage.
Kann mir bitte jemand diese SQL Anweisung schreiben?
SELECT
A.*
FROM
TabX AS A
WHERE
A.ID IN
(
SELECT TOP 2
B.ID
FROM
TabX AS B
WHERE
B.Team = A.Team
ORDER BY
B.Datum DESC
)
ebs17,
komme gerade aus der kneipe ...
pack es gerade nicht ... umzusetzen ..
melde mich samstag .......
Eberhard,
Danke für deine kompetente Unterstützung!
Eine abschließende Frage hätte ich allerdings noch.
Ist es möglich, den Wert von TOP aus einem geöffneten Formular abzurufen?
SELECT
A.*
FROM
TabX AS A
WHERE
A.ID IN
(
SELECT TOP =[Forms]![analyse].[Wert]
B.ID
FROM
TabX AS B
WHERE
B.Team = A.Team
ORDER BY
B.Datum DESC
)
;
oberer code funtioniert (natürlich) nicht.
Zitatfuntioniert (natürlich) nicht
Klingt gut. Gibt es auch eine qualifizierte Meldung? Gelber Rauch, blaue Blitze?
Wobei ich behaupten würde, der Vorschlag funktioniert, nur Deine Umsetzung nicht.
Hast Du den irren Aufwand betrieben, Bezeichnungen zu vergleichen und ggf. anzupassen?
Eberhard, ich meinte, dass mein veränderter code nicht funzt.
ZitatIst es möglich, den Wert von TOP aus einem geöffneten Formular abzurufen?
Als Parameter nicht (den Formularbezug hatte ich nicht bemerkt).
Allerdings ist eine SQL-Anweisung auch nur etwas Text, den man vor Ausführung der Anweisung beliebig (im Rahmen der geforderten Syntax) zusammensetzen kann.
Auf die Frage des WIE käme die Gegenfrage, wie genau die Abfrage nachfolgend verwendet werden würde.