So ich habs nun irgendwie hinbekommen, jedenfalls liefert mir die reine SQL-Abfrage genau die Tabelle, die ich oben schon beschrieben habe (diesmal mit Sortierungsmöglichkeit

)
Auf jedenfall vielen Dank an ]jolly[. So einen Denkanstoß habe ich gebraucht
Wen es interessiert, hier mal die (etwas lange) Abfrage:
Code:
SELECT member.Name, tabmindate.Date, tabmindate.Level, tabmindate.Points, tabmaxdate.Date,
tabmaxdate.Level, tabmaxdate.Points, (tabmaxdate.Level - tabmindate.Level) AS DiffLevel,
(tabmaxdate.Points - tabmindate.Points) AS DiffPoints
FROM member
JOIN (
/* Punkte bei MIN(Date) je Member */
/* GuildID zur Auswahlbeschränkung */
(
SELECT member.MemberID, member.GuildID, table1.Date, table1.Level, table1.Points
FROM member
JOIN (
SELECT h.MemberID, h.Date, h.Level, h.Points
FROM member_points h, (
SELECT member_points.MemberID, MIN(Date) AS max_date, Level, Points
FROM member_points
GROUP BY member_points.MemberID
) AS mpu
WHERE h.MemberID = mpu.MemberID AND h.Date = mpu.max_date
ORDER BY MemberID ASC
) AS table1 ON member.MemberID=table1.MemberID
WHERE GuildID=1
ORDER BY member.MemberID
) AS tabmindate
JOIN
/* Punkte bei MAX(Date) je Member */
/* GuildID zur Auswahlbeschränkung */
(
SELECT member.MemberID, member.GuildID, table1.Date, table1.Level, table1.Points
FROM member
JOIN (
SELECT h.MemberID, h.Date, h.Level, h.Points
FROM member_points h, (
SELECT member_points.MemberID, MAX(Date) AS max_date, Level, Points
FROM member_points
GROUP BY member_points.MemberID
) AS mpu
WHERE h.MemberID = mpu.MemberID AND h.Date = mpu.max_date
ORDER BY MemberID ASC
) as table1 ON member.MemberID=table1.MemberID
) AS tabmaxdate ON tabmindate.MemberID=tabmaxdate.MemberID
) ON member.MemberID=tabmindate.MemberID
WHERE member.GuildID=1
ORDER BY tabmaxdate.Level DESC, tabmaxdate.Points DESC
Edit:
Ok, es hat sich ein neues Problem ergeben.
Ich möchte es so haben, dass sich das tabmindate.Date maximal um 7 Tage vom tabmaxdate.Date unterscheidet.
Also wenn tabmaxdate.Date = 2011-08-08 ist , dann soll tabmindate.Date mindestens 2011-08-02 sein, auch wenn noch frühere Daten in der Datenbank sind.
Das müsste man ja irgendwie mit einer Bedingung innerhalb der Abfrage lösen. Hat jemand da einen Vorschlag, wie man sowas bewerkstelligen kann?