Dites que j'ai le tableau suivant …
MemberID ServDate 001 12-12-2015 001 12-13-2015 001 12-15-2015 002 11-30-2015 002 12-04-2015
Et je veux que ça ressemble à ça …
MemberID ServDate LastServDate 001 12-12-2015 12-15-2015 001 12-13-2015 12-15-2015 001 12-15-2015 12-15-2015 002 11-30-2015 12-04-2015 002 12-04-2015 12-04-2015
Est-ce que je peux le faire sans devoir utiliser une requête GROUP BY
ou nestede? (J'ai affaire à une très grosse database et le GROUP BY ralentit considérablement)
Merci!
SELECT MemberID, ServDate, MAX(ServDate) OVER (PARTITION BY MemberID) AS LastServDate FROM Table
SQL standard, fonctionne donc dans la plupart des SGBDR modernes (y compris SQL Server et Oracle).
EDIT à propos, si vous voulez en savoir plus: MSDN ref. pour OVER