MySQL - Les requêtes standards de calcul

Avertissement :


Au sujet de ce type de fonctions:
mysql_connect() mysql_error() mysql_fetch_assoc() mysql_fetch_row() mysql_num_rows() mysql_query() mysql_select_db()

Ces fonctions ou extensions sont obsolètes depuis PHP 5.5.0, et ont été supprimées en PHP 7.0.0. à la place, vous pouvez utiliser l'extension MySQLi ou l'extension PDO_MySQL. Voir aussi MySQL : choisir une API du guide et ces entrées de la FAQ pour plus d'informations. Alternatives à cette fonction :
mysqli_connect()
PDO::__construct()

MySQL - Les requêtes standards de calcul

Tutoriel pour les initiés. Les requêtes de calcul servent souvent à affiner les recherches sur les enregistrements ou compter les enregistrements avec des conditions spécifiques. Elles ont à part cela de multiple fonctions. Avoir un petit coté mathématique est souhaitable pour la compréhension des requêtes de calcul.

Sommaire :

MySQL - Les requêtes standards de calcul

Les requêtes standards de calcul.
Réaliser une moyenne :
SELECT avg (expression) FROM nomdetable WHERE condition;

Réaliser une somme :
SELECT sum(expression) FROM nomdetable WHERE condition;

Cette requête va sommer suivant l'expression qu'on lui donne. Si on lui donne seulement un attribut, alors elle va sommer toute la colonne; sinon elle somme en suivant l'expression.

Dans les deux cas, l'expression peut être par exemple (prix*quantite) ou bien (prix*taux).

Compter des attributs :
SELECT COUNT(expression) FROM matable WHERE condition;

Attention COUNT ne réalise pas la même opération que SOMME. En effet SOMME additionne le contenu du champ alors que COUNT additionne 1.

Recherche du maximum :
SELECT MAX(attribut) FROM nomdetable WHERE condition;

Recherche du minimum
SELECT MIN (attribut) FROM nomdetable WHERE condition;
Opération intersection, union, différence.
En SQL ces opérations correspondent aux opérateurs INTERSECT , UNION , EXCEPT

Pour utiliser ces opérateurs, quelques contraintes doivent être respectées :
  • Les attributs selectionnés doivent être de même type.
  • Les deux requêtes sql utilisées doivent selectionner le même nombre d'attributs.

Exemple :
Article_papeterie(idp,nomp,prix) Article_librairie(idl,noml,prix) select nomp from Article_papeterie
union all select noml from Article_librairie;


Cette requête va permettre de sélectionner tous les noms des articles qui sont contenus dans article_papeterie et dans article_librairie.