Maison > base de données > tutoriel mysql > Comment trouver la valeur maximale du signal pour chaque identifiant unique dans un ensemble de données ?

Comment trouver la valeur maximale du signal pour chaque identifiant unique dans un ensemble de données ?

DDD
Libérer: 2025-01-06 13:10:38
original
207 Les gens l'ont consulté

How to Find the Maximum Signal Value for Each Unique ID in a Dataset?

Récupération des valeurs de signal maximales pour les identifiants uniques

Afin de déterminer la valeur de signal maximale pour chaque identifiant unique dans un ensemble de données donné, vous pouvez employer l'approche suivante, qui implique une opération d'auto-jointure :

SELECT cur.id, cur.signal, cur.station, cur.ownerid
FROM yourtable cur
WHERE NOT EXISTS (
    SELECT *
    FROM yourtable high
    WHERE high.id = cur.id AND high.signal > cur.signal
)
Copier après la connexion

Cette requête fonctionne en joignant la table avec elle-même (représentée par les alias cur et high) et filtrer les lignes pour lesquelles une valeur de signal plus élevée existe. Le résultat est une liste de lignes contenant l'ID, la valeur du signal, la station et l'ID du propriétaire pour chaque ID distinct avec la valeur de signal la plus élevée.

Dans le contexte de l'exemple de tableau fourni :

ID     Signal    Station    OwnerID
111     -120      Home       1
111     -130      Car        1
111     -135      Work       2
222     -98       Home       2
222     -95       Work       1
222     -103      Work       2
Copier après la connexion

L'exécution de la requête donnerait les résultats suivants :

ID    Signal    Station    OwnerID
111   -120      Home        1
222   -95       Work        1
Copier après la connexion

Ce tableau contient la valeur maximale du signal pour chaque ID unique, résolvant efficacement le problème d'origine sans données inutiles agrégation ou nécessité de jointures de tables supplémentaires.

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 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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal