Maison > base de données > tutoriel mysql > Comment récupérer les valeurs de colonne correspondantes pour la valeur maximale en SQL ?

Comment récupérer les valeurs de colonne correspondantes pour la valeur maximale en SQL ?

Patricia Arquette
Libérer: 2024-12-29 22:00:20
original
831 Les gens l'ont consulté

How to Retrieve Corresponding Column Values for the Maximum Value in SQL?

Obtention des valeurs de colonne correspondantes pour la valeur maximale

En SQL, vous pouvez rencontrer des situations dans lesquelles vous souhaitez récupérer les valeurs de colonne qui correspondent à la valeur maximale valeur d'une autre colonne, tout en s'assurant que les données récupérées sont précis.

Problème :

Lors de l'interrogation d'une table pour récupérer des colonnes spécifiques et regrouper les résultats en fonction d'une colonne, telle que la catégorie vidéo, vous pouvez observer que pour le valeur maximale de la colonne désignée (par exemple, video_id), il extrait la valeur correcte mais renvoie la première ligne du tableau pour toutes les autres colonnes (par exemple, video_url, video_date, video_title et short_description).

Solution :

Pour récupérer les colonnes correspondant à la valeur maximale de manière appropriée, envisagez l'approche suivante :

SELECT
    s.video_id
    ,s.video_category
    ,s.video_url
    ,s.video_date
    ,s.video_title
    ,s.short_description
FROM videos s
   JOIN (SELECT MAX(video_id) AS id FROM videos GROUP BY video_category) max
      ON s.video_id = max.id
Copier après la connexion

Cette requête exploite une opération JOIN pour faire correspondre l'ID vidéo (video_id) de la sous-requête qui calcule l'ID vidéo maximum (id) pour chaque catégorie vidéo avec l'ID vidéo de la table des vidéos. En utilisant la condition JOIN s.video_id = max.id, cela garantit que seule la ligne avec l'ID vidéo maximum pour chaque catégorie est renvoyée.

Cette approche fournit non seulement les valeurs correspondantes correctes pour l'ID vidéo maximum. mais fonctionne également beaucoup plus rapidement que la solution proposée dans le message d'origine.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal