Maison  >  Article  >  base de données  >  Comment collecter des statistiques dans MySQL ?

Comment collecter des statistiques dans MySQL ?

青灯夜游
青灯夜游original
2020-10-16 09:29:558360parcourir

Méthodes pour les données statistiques dans MySQL : 1. Utilisez la fonction MAX() pour compter les données maximales d'un certain champ ; 2. Utilisez la fonction MIN() pour compter les données minimales d'un certain champ ; . Utilisez la fonction COUNT() pour compter la requête Le nombre de lignes du résultat ; 4. Utilisez la fonction SUM() pour compter la somme des données ; 5. Utilisez la fonction AVG() pour compter la moyenne ;

Comment collecter des statistiques dans MySQL ?

(Tutoriel recommandé : Tutoriel vidéo MySQL)

Fonction MySQL MAX()

La fonction MySQL MAX() est utilisée pour renvoyer la valeur maximale dans la colonne spécifiée.

Afin de faciliter la compréhension, créez d'abord un tableau de scores des étudiants tb_students_score. Le contenu des données du tableau des scores des étudiants est le suivant.

mysql> use test_db;
Database changed
mysql> SELECT * FROM tb_students_score;
+--------------+---------------+
| student_name | student_score |
+--------------+---------------+
| Dany         |            90 |
| Green        |            99 |
| Henry        |            95 |
| Jane         |            98 |
| Jim          |            88 |
| John         |            94 |
| Lily         |           100 |
| Susan        |            96 |
| Thomas       |            93 |
| Tom          |            89 |
+--------------+---------------+
10 rows in set (0.13 sec)

[Exemple 1] Trouvez le score le plus élevé dans la table tb_students_score L'instruction SQL d'entrée et les résultats d'exécution sont les suivants.

mysql> SELECT MAX(student_score)
    -> AS max_score
    -> FROM tb_students_score;
+-----------+
| max_score |
+-----------+
|       100 |
+-----------+
1 row in set (0.06 sec)

Comme vous pouvez le voir sur les résultats en cours d'exécution, la fonction MAX() demande que la valeur maximale du champ student_score est de 100.

La fonction MAX() convient non seulement à la recherche de types numériques, mais également aux types de caractères.

[Exemple 2] Recherchez la valeur maximale de student_name dans la table tb_students_score. L'instruction SQL d'entrée et les résultats de l'exécution sont les suivants.

mysql> SELECT MAX(student_name)
    -> AS max_name
    -> FROM tb_students_score;
+----------+
| max_name |
+----------+
| Tom      |
+----------+
1 row in set (0.03 sec)

Comme vous pouvez le voir sur les résultats en cours d'exécution, la fonction MAX() peut juger de la taille des lettres et renvoyer la plus grande valeur de caractère ou de chaîne.

Remarque : La fonction MAX() peut également renvoyer la valeur maximale dans n'importe quelle colonne, y compris renvoyer la valeur maximale du type de caractère. Lors de la comparaison des données de type de caractère, la comparaison est basée sur la valeur du code ASCII du caractère. De a à z, a a le plus petit code ASCII et z a le plus grand. Lors de la comparaison, comparez d'abord le premier caractère. S'ils sont égaux, continuez à comparer le caractère suivant jusqu'à ce que les deux caractères ne soient pas égaux ou que le caractère se termine. Par exemple, lorsque b est comparé à t, t est la valeur maximale ; lorsque bcd est comparé à bca, bcd est la valeur maximale.

Fonction MySQL MIN()

La fonction MySQL MIN() est utilisée pour renvoyer la valeur minimale dans la colonne de requête.

Afin de faciliter la compréhension, vous devez utiliser la table de données tb_students_score créée en parlant de la fonction MAX() dans la section précédente.

[Exemple] Recherchez le score le plus bas dans la table tb_students_score. L'instruction SQL d'entrée et les résultats de l'exécution sont les suivants.

mysql> SELECT MIN(student_score)
    -> AS min_score
    -> FROM tb_students_score;
+-----------+
| min_score |
+-----------+
|        88 |
+-----------+
1 row in set (0.00 sec)

Comme vous pouvez le voir d'après les résultats, la fonction MIN() demande que la valeur minimale du champ student_score est de 88.

Astuce : La fonction MIN() est similaire à la fonction MAX() et convient non seulement à la recherche de types numériques, mais également aux types de caractères.

Fonction MySQL COUNT()

La fonction MySQL COUNT() compte le nombre total de lignes d'enregistrement contenues dans la table de données ou renvoie le nombre de lignes de données contenues dans la colonne en fonction de la requête résultats. Les méthodes d'utilisation sont les suivantes Deux types :

COUNT(*) calcule le nombre total de lignes dans le tableau, qu'une colonne ait une valeur ou une valeur nulle.

COUNT (nom du champ) calcule le nombre total de lignes sous la colonne spécifiée. Les lignes avec des valeurs nulles seront ignorées lors du calcul.

Ici, vous devez utiliser le tableau suivant tb_students_score créé lors de l'introduction de la fonction MAX().

[Exemple] Interrogez le nombre total de lignes dans la table tb_students_score. L'instruction SQL d'entrée et les résultats de l'exécution sont les suivants.

mysql> SELECT COUNT(*)
    -> AS students_number
    -> FROM tb_students_score;
+-----------------+
| students_number |
+-----------------+
|              10 |
+-----------------+
1 row in set (0.03 sec)

Comme vous pouvez le voir dans les résultats de la requête, COUNT(*) renvoie le nombre total de lignes enregistrées dans la table tb_students_score, quelle que soit la valeur. Le nombre total renvoyé est nommé student_number.

Astuce : La façon dont les valeurs NULL sont traitées lors du calcul du total est que les lignes avec des valeurs nulles dans la colonne spécifiée sont ignorées par la fonction COUNT(), mais si la colonne n'est pas spécifiée et que le L'étoile est utilisée dans la fonction COUNT(). S'il est marqué "*", tous les enregistrements ne seront pas ignorés.

Fonction MySQL SUM()

MySQL SUM() est une fonction de sommation qui renvoie la somme des valeurs de colonne spécifiées.

Comment fonctionne la fonction SUM() ?

  • Si vous utilisez la fonction SUM dans une instruction SELECT qui ne renvoie aucune ligne correspondante, la fonction SUM renvoie NULL au lieu de 0.

  • L'opérateur DISTINCT permet de calculer des valeurs distinctes dans un ensemble.

  • La fonction SOMME ignore les valeurs NULL dans les calculs.

Ici, vous devez utiliser le tableau suivant tb_students_score créé lors de l'introduction de la fonction MAX().

[Exemple] Calculez le score total des notes des étudiants dans la table tb_students_score. L'instruction SQL d'entrée et les résultats d'exécution sont les suivants.

mysql> SELECT SUM(student_score)
    -> AS score_sum
    -> FROM tb_students_score;
+-----------+
| score_sum |
+-----------+
|       942 |
+-----------+
1 row in set (0.00 sec)

Comme vous pouvez le voir dans les résultats de la requête, la fonction SUM() renvoie la somme de toutes les notes de l'élève comme 942.

Astuce : La fonction SUM() ignore les lignes avec des valeurs de colonne NULL lors du calcul.

Fonction MySQL AVG()

La fonction MySQL AVG() calcule la moyenne des données de la colonne spécifiée en calculant le nombre de lignes renvoyées et la somme de chaque ligne de données.

Ici, vous devez utiliser le tableau suivant tb_students_score créé lors de l'introduction de la fonction MAX().

[Exemple] Dans la table tb_students_score, interrogez le score moyen de tous les étudiants. L'instruction SQL d'entrée et les résultats d'exécution sont les suivants.

mysql> SELECT AVG(student_score)
    -> AS score_avg
    -> FROM tb_students_score;
+-----------+
| score_avg |
+-----------+
|   94.2000 |
+-----------+
1 row in set (0.03 sec)

Conseil : lorsque vous utilisez la fonction AVG(), le paramètre est le nom de la colonne à calculer. Si vous souhaitez obtenir la moyenne de plusieurs colonnes, vous devez utiliser la fonction AVG() dans chaque colonne. .

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