Ich habe eine Access-Datenbank, für die ich versuche, das neueste Ergebnis in einer Abfrage zu ermitteln. Ich möchte wissen, ob das letzte Darlehen für einen Gegenstand abgeschlossen ist oder nicht. z.B.Finde das neueste Ergebnis in der Abfrage - ms Zugriff
tbl_Loans
LoanID Equipment Number Start Date Return Date Expr:IsOnLoan
123 78457 16/05/2001 19/06/2003 Loan Complete
124 79557 17/07/2016 Loan in Progress
125 78457 03/06/2016 Loan in Progress
126 79630 01/01/2015 01/01/2016 Loan Complete
127 79360 02/03/2016 Loan in Progress
128 78457 01/01/2016 01/03/2016 Loan Complete
Wo Expr:
IsOnLoan: IIf([Loans]![Return Date] Is Null,"Loan Active","Loan Complete")
ich das jüngste Ergebnis für jede Gerätenummer in einer anderen Spalte in einer Abfrage (wahrscheinlich eine separate zurückkehren möchten: IsOnLoan ein IIF ist Query) dh
Loan ID Equipment Number Start Date Return Date Expr:IsOnLoan
125 78457 03/06/2016 Loan in Progress
127 79360 02/03/2016 Loan in Progress
128 78457 01/01/2016 01/03/2016 Loan Complete
Microsoft Support-Seiten hätte ich ein "Top" aber andere verwenden s Ich habe gesehen, dass ein innerer Join verwendet wurde und ich kann keinen von beiden zur Arbeit bringen.
Jede Hilfe sehr geschätzt
Dank
Danke für Ihre Hilfe. Ich habe versucht, dies in den letzten paar Tagen zu benutzen, und ich kann es nicht zur Arbeit bringen. Ich bekomme ein paar Fehler: Der erste war 'zirkuläre Referenz verursacht durch Alias' Startdatum 'in der Auswahlliste der Abfragedefinition. Ich habe versucht, dies zu ändern, indem ich 'AS [Start Date] zu MaxStart änderte. Dann bekomme ich einen Fehler 'Sie haben eine Unterabfrage geschrieben, die mehr als ein Feld zurückgeben kann, ohne EXISTS reserviertes Wort in der FROM-Klausel der Hauptabfrage zu verwenden. Überarbeiten Sie die SELECT-Anweisung der Unterabfrage, um nur ein Ergebnis zurückzugeben. Ich bin ein bisschen ratlos, wie das gelöst werden kann. – TerrorPenguin
Was sind die Fehler? –
Sorry, war Bearbeitung Post nach dem Betreten! Um klar zu sein, ist neuer Code jetzt 'Ausdr1: (SELECT t1.LoanID, t1. [Ausstattungsnummer], t1. [Startdatum], t1. [Rückkehrdatum], t1. [Ausdr: IsOnLoan] FROM tbl_Loans AS t1 INNERER JOIN (SELECT [Gerätenummer], MAX ([Startdatum]) AS [MaxStart] FROM tbl_Loans GROUP BY [Gerätenummer]) AS t2 EIN t1. [Gerätenummer] = t2. [Gerätenummer] AND t1. [Startdatum] = t2. [MaxStart]) Entschuldigung für die Formatierung – TerrorPenguin