SQL MAX()

Dans le langage SQL, la fonction d’agrégation MAX() permet de retourner la valeur maximale d’une colonne dans un set d’enregistrement. La fonction peut s’appliquée à des données numériques ou alphanumériques. Il est par exemple possible de rechercher le produit le plus cher dans une table d’une boutique en ligne.

Syntaxe

La syntaxe de la requête SQL pour retourner la valeur maximum de la colonne “nom_colonne” est la suivante:

SELECT MAX(nom_colonne) FROM table

Lorsque cette fonctionnalité est utilisée en association avec la commande GROUP BY, la requête peut ressembler à l’exemple ci-dessous:

SELECT colonne1, MAX(colonne2)
FROM table
GROUP BY colonne1

Exemple

Imaginons un site d’e-commerce qui possède une table “produit” sur lequel on peut retrouver des produits informatiques.

idnomprix
1clavier50
2souris21
3écran120
4disque dur150

Connaître la valeur la plus élevée

Pour extraire uniquement le tarif le plus élevé dans la table, il est possible d’utiliser la requête suivante:

SELECT MAX(prix) FROM produit

Le résultat sera le suivant :

max(prix)
150

Connaître l’enregistrement ayant la valeur maximale

Il est aussi possible d’afficher le nom du produit le plus cher en même temps que d’afficher son prix. Pour cela, il suffit simplement d’utiliser la fonction d’agrégation MAX() tout en sélectionnant les autres enregistrements. La requête SQL est alors la suivante :

SELECT id, nom, MAX(prix) FROM produit

Le résultat de cette requête sera le suivant :

idnommax(prix)
4disque dur150
Partager