Ich bin seit Stunden auf dieser Abfrage festgefahren und hoffe, ein Access-Guru kann mir helfen.Access Database Ich möchte einen Datensatz mit dem neuesten Datum aus einer anderen Tabelle holen
Ich schreibe eine SELECT-Abfrage zum inneren Join mit einer anderen Tabelle (1 zu viele). Ich muss nur den Rekord mit dem neuesten Datum holen. Ich recherchiere und probiere viele Beispiele aus, die nicht funktionieren.
Die nächstgelegene ich gewesen ist dies ein
SELECT
tblData.RecentDate,
tblData.ID,
tblData.Name,
tblData.Address
FROM [table1]
INNER JOIN
( SELECT Top 1 *
FROM [table2] bh1
ORDER BY bh1.RecentDate DESC
) tblData
ON [table1].[ID] = tblData.[ID])
Die Top 1 nicht mir für jede ID einen Datensatz nicht geben. Wenn ich die Top 1 entferne, sehe ich alle Datensätze mit der ID, aber ich habe festgestellt, dass das Feld RecentDate leer ist. Wenn ich die oberste 1 in der Abfrage belasse, sind Datensätze für ID 1 und 4 nicht im Ergebnis enthalten.
Ich habe auch versucht die folgenden
INNER JOIN
( SELECT Max(bh1.RecentDate) as RecentDate, bh1.Name, branchhistory.Address, bh1.City,
FROM [table2] bh1
GROUP BY bh1.ID
) tblData
ON [table1].[ID] = tblData.[UDID]
Diese Abfrage funktioniert nur, wenn ich wählen Max (bh1.RecentDate) als RecentDate, bh1.ID und die bh1.ID GROUPBY ... Aber ich habe andere Felder abzurufen, was erfordert, um der Gruppe By hinzuzufügen, und wird nur 1 Datensatz nicht zurückgeben.
Von meinem inneren Join muss ich den Datensatz mit vielen Feldern abrufen und mit dem letzten Datumswert abrufen.
Ich habe gerade versucht, die folgenden aber nicht alle IDs kommen Jede Hilfe
zurückINNER JOIN
( SELECT *
FROM [table2] bh1
WHERE bh1.RecentDate= (SELECT Max(bh2.RecentDate) from [table2] as bh2 WHERE bh1.ID = bh2.ID)
) tblData
ON [table1].[ID] = tblData.[ID]
wird sehr geschätzt.
Dank
Sie sind ziemlich nah dran siehe [Nach sku gruppieren, max date SQL] (http://stackoverflow.com/a/37555243/119477) –
Gibt es mehr zu Ihrer ersten Abfrage? Sie haben drei öffnende Paren 'FROM ((([table1]', aber nur einen Abschluss). – BJones