hi all,
stehe gerade etwas auf der grossen wietenr leitug
habe eine table [A]:
USER I ROUND I DATE
---------------------------------
usera I 3 I 2004-04-01
usera I 4 I 2004-04-11
usera I 2 I 2004-04-21
userb I 6 I 2004-03-01
userb I 4 I 2004-04-01
SO, ich möchte mir nur die neursten runden angezeigt werden
also, jeder user soll erschienen, aber nur mit der runde die als letztes gemacht wurde
ergebniss:
usera I 2 I 2004-04-21
userb I 4 I 2004-04-01
bastle schon diue ganze zeit herum, nur wenn ich SELECt max(DATE
),ROUND
FROM A GROUP BY USER mache
steht immer das neuerste datum da, das passt, nur nicht die dazugehörige runde !
jemand eine idee? geht das evnetuell mit joins? habe mal einen ansatz, nur leider sitmmt dieser sicher nicht, oder?
soweit bin ich gekommen:
SELECT
e_dummy.USER,e_dummy.ROUND,e_dummy.DATE
FROM
A
as e
INNER JOIN A
as e_dummy
ON
e.USER=e_dummy.USER
AND
e.DATE<e_dummy.DATE
GROUP BY e.USER
AUSGABE:
usera I 4 I 2004-04-11
userb I 4 I 2004-04-01
SELECT
e_dummy.USER,e_dummy.ROUND,e_dummy.DATE
FROM
A
as e
INNER JOIN A
as e_dummy
ON
e.USER=e_dummy.USER
AND
e.DATE>e_dummy.DATE
GROUP BY e.USER
AUSGABE:
usera I 3 I 2004-04-01
userb I 6 I 2004-03-01
also beides keine werte die ich haben will. erstes ist schon nah dran, nur zeigt er mir den 2 wert von usera und bei userb ebenfalls.
danke