Maison >base de données >tutoriel mysql >Comment trouver la date maximale dans une jointure MySQL ?

Comment trouver la date maximale dans une jointure MySQL ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-15 07:30:10776parcourir

How to Find the Maximum Date in a MySQL Join?

Comment sélectionner la date maximale dans une instruction de jointure

Dans MySQL, il est possible de récupérer la date maximale pour un attribut particulier dans un ensemble de données joint à l'aide de la fonction MAX(). Cette technique est couramment utilisée pour recueillir des données historiques ou identifier l'instance la plus récente d'un événement spécifique.

Considérez la requête suivante :

SELECT t1.received_id
     , t1.transaction_id
     , t1.date_modified
     , l.location
  FROM transactions t1
  JOIN ( SELECT received_id, MAX(date_modified) maxmodify FROM transactions GROUP BY received_id) max_record
    ON max_record.received_id = t1.received_id 
   AND max_record.maxmodify = t1.date_modified
  JOIN locations l
    ON l.location_id = t1.location_id
  JOIN received r
    ON r.received_id = t1.received_id
 WHERE t1.received_id = '1782'
 ORDER 
    BY t1.date_modified DESC

Cette requête récupère l'ID du reçu, l'ID de la transaction, date de modification et emplacement de l'enregistrement portant l'ID « 1782 », où la date de modification correspond à la date maximale trouvée pour cet ID de reçu. Cela garantit que nous obtenons les dernières informations historiques pour l'enregistrement spécifié.

Le composant principal de la requête est la sous-requête suivante :

SELECT id,MAX(thing) max_thing FROM my_table GROUP BY id

Cette sous-requête identifie la valeur maximale de l'attribut thing. au sein de chaque groupe défini par l’attribut id. En joignant la table d'origine avec cette sous-requête, nous pouvons filtrer les enregistrements avec des dates non maximales, récupérant ainsi uniquement les données historiques souhaitées.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn