Hallo alle,
ich suche seit Tagen nach einer Möglichkeit, einzelne Datensätze zu selectieren. Gegeben ist Tabelle
<PRE>
NUTZER NR WERT
A 1 3
A 2 5
A 3 4 <-
B 1 3
B 2 5
B 3 4
B 4 1 <-
C 1 2
C 2 1 <-
</PRE>
Nun möchte ich als Select-Ergebnis die kompletten Zeilen mit der höchsten Nr für jeden Nutzer (oben mit Pfeil), also:
<PRE>
NUTZER NR WERT
A 3 4
B 4 1
C 2 1
</PRE>
Folgende Anweisung:
<PRE>
select NUTZER, max(NR) as MAXNR from T_NUTZERZEITEN
group by NUTZER
</PRE>
liefert ja nur
<PRE>
NUTZER MAXNR
A 3
B 4
C 2
</PRE>
Wie komme ich an o.g. Ergebnis? Ich habe etwa probiert:
<PRE>
select * from T_NUTZERZEITEN Z
where exists
(select NUTZER, max(NR) as MAXNR from T_NUTZERZEITEN Y
where ((Z.NUTZER = Y.NUTZER) and (Z.NR = Y.MAXNR))
group by NUTZER
)
</PRE>
Leider bis jetzt alles erfolglos...
Danke für jede Hilfe.
Stahli
ich suche seit Tagen nach einer Möglichkeit, einzelne Datensätze zu selectieren. Gegeben ist Tabelle
<PRE>
NUTZER NR WERT
A 1 3
A 2 5
A 3 4 <-
B 1 3
B 2 5
B 3 4
B 4 1 <-
C 1 2
C 2 1 <-
</PRE>
Nun möchte ich als Select-Ergebnis die kompletten Zeilen mit der höchsten Nr für jeden Nutzer (oben mit Pfeil), also:
<PRE>
NUTZER NR WERT
A 3 4
B 4 1
C 2 1
</PRE>
Folgende Anweisung:
<PRE>
select NUTZER, max(NR) as MAXNR from T_NUTZERZEITEN
group by NUTZER
</PRE>
liefert ja nur
<PRE>
NUTZER MAXNR
A 3
B 4
C 2
</PRE>
Wie komme ich an o.g. Ergebnis? Ich habe etwa probiert:
<PRE>
select * from T_NUTZERZEITEN Z
where exists
(select NUTZER, max(NR) as MAXNR from T_NUTZERZEITEN Y
where ((Z.NUTZER = Y.NUTZER) and (Z.NR = Y.MAXNR))
group by NUTZER
)
</PRE>
Leider bis jetzt alles erfolglos...
Danke für jede Hilfe.
Stahli
Comment