Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Sélectionnez les informations du tableau où la ligne a une date maximale

SELECT group,MAX(date) as max_date
FROM table
WHERE checks>0
GROUP BY group

Cela fonctionne pour obtenir la date maximale... joignez-la à vos données pour obtenir les autres colonnes :

Select group,max_date,checks
from table t
inner join 
(SELECT group,MAX(date) as max_date
FROM table
WHERE checks>0
GROUP BY group)a
on a.group = t.group and a.max_date = date

La jointure interne fonctionne comme filtre pour obtenir uniquement l'enregistrement maximum.

Pour votre information, vos noms de colonnes sont horribles, n'utilisez pas de mots réservés pour les colonnes (groupe, date, table).