Récupérer la dernière date par groupe de modèles dans MySQL
Dans les systèmes de gestion de bases de données, extraire la dernière date associée à chaque groupe de modèles est une tâche courante. Voyons comment implémenter cela dans MySQL.
Supposons que les données suivantes soient stockées dans une table nommée « doc » :
<code>| NO | model | date | +---+-------+----------+ | 1 | bee | 2011-12-01 | | 2 | bee | 2011-12-05 | | 3 | bee | 2011-12-12 | | 4 | tar | 2011-12-13 |</code>
Notre objectif est d'obtenir un ensemble de résultats indiquant la dernière date pour chaque modèle :
<code>| model | date | +-------+----------+ | bee | 2011-12-12 | | tar | 2011-12-13 |</code>
Pour cela on peut utiliser la clause GROUP BY
et la fonction d'agrégation MAX()
:
SELECT model, MAX(date) AS date FROM doc GROUP BY model;
Cette requête détermine la date maximale pour chaque modèle dans la table "doc". MAX()
La fonction agrège les valeurs de date dans chaque groupe de modèles et renvoie la valeur la plus élevée.
Si vous avez l'intention de récupérer tous les modèles avec une date maximale globale, vous pouvez utiliser la requête suivante :
SELECT model, date FROM doc WHERE date IN (SELECT MAX(date) FROM doc);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!