von RobertG » Fr, 16.07.2021 08:34
Hallo Stefan,
das Anzeigen der ID macht das Ganze etwas schwieriger, geht aber auch:
Code: Alles auswählen
SELECT
(SELECT "ID" FROM "Tabelle" WHERE "EinWert" = "a"."Einwert" AND "LetzteÄnderung" = "a"."LetzteÄnderung") AS "ID",
"a".*
FROM
(SELECT "EinWert", MAX( "LetzteÄnderung" ) AS "LetzteÄnderung" FROM "test"."Tabelle" "Tabelle" GROUP BY "EinWert") AS "a"
Hier noch eine andere Variante, die nicht daran scheitert, wenn "LetzteÄnderung" bei "EinWert" eventuell doppelt vorkommt:
Code: Alles auswählen
SELECT "b".*
FROM (SELECT "EinWert", MAX( "LetzteÄnderung" ) AS "LetzteÄnderung" FROM "test"."Tabelle" "Tabelle" GROUP BY "EinWert") AS "a",
(SELECT * FROM "test"."Tabelle") AS "b"
WHERE "b"."EinWert" = "a"."Einwert" AND "b"."LetzteÄnderung" = "a"."LetzteÄnderung"
Gruß
Robert
Hallo Stefan,
das Anzeigen der ID macht das Ganze etwas schwieriger, geht aber auch:
[code]SELECT
(SELECT "ID" FROM "Tabelle" WHERE "EinWert" = "a"."Einwert" AND "LetzteÄnderung" = "a"."LetzteÄnderung") AS "ID",
"a".*
FROM
(SELECT "EinWert", MAX( "LetzteÄnderung" ) AS "LetzteÄnderung" FROM "test"."Tabelle" "Tabelle" GROUP BY "EinWert") AS "a"[/code]
Hier noch eine andere Variante, die nicht daran scheitert, wenn "LetzteÄnderung" bei "EinWert" eventuell doppelt vorkommt:
[code]
SELECT "b".*
FROM (SELECT "EinWert", MAX( "LetzteÄnderung" ) AS "LetzteÄnderung" FROM "test"."Tabelle" "Tabelle" GROUP BY "EinWert") AS "a",
(SELECT * FROM "test"."Tabelle") AS "b"
WHERE "b"."EinWert" = "a"."Einwert" AND "b"."LetzteÄnderung" = "a"."LetzteÄnderung"[/code]
Gruß
Robert