Maison > base de données > tutoriel mysql > Comment puis-je calculer des pourcentages de valeurs distinctes en SQL ?

Comment puis-je calculer des pourcentages de valeurs distinctes en SQL ?

Patricia Arquette
Libérer: 2025-01-17 03:56:09
original
429 Les gens l'ont consulté

How Can I Calculate Percentages of Distinct Values in SQL?

Maîtriser les calculs de pourcentages en SQL : un guide pratique

L'analyse des distributions de données est un aspect fondamental de l'analyse des données. Une tâche clé consiste à calculer le pourcentage de chaque valeur distincte dans une colonne spécifique. Ceci est particulièrement utile pour comprendre la fréquence des différentes catégories ou réponses.

Ce guide explore diverses techniques SQL pour calculer des pourcentages, en particulier lorsqu'il s'agit de données textuelles telles que les notes, où des valeurs inattendues peuvent survenir.

Méthode 1 : Tirer parti de la OVER() Clause

La clause OVER() offre un moyen efficace de calculer des pourcentages dans une fenêtre de lignes définie. Voici comment calculer le pourcentage de chaque note par rapport au nombre total de notes :

<code class="language-sql">SELECT Grade, COUNT(*) * 100.0 / SUM(COUNT(*)) OVER ()
FROM MyTable
GROUP BY Grade;</code>
Copier après la connexion

Méthode 2 : Une approche universelle pour une large compatibilité

Cette méthode offre une compatibilité SQL plus large en calculant des pourcentages basés sur le nombre total de lignes du tableau :

<code class="language-sql">SELECT Grade, COUNT(*) * 100.0 / (SELECT COUNT(*) FROM MyTable)
FROM MyTable
GROUP BY Grade;</code>
Copier après la connexion

Méthode 3 : Utilisation d'expressions de table communes (CTE)

Bien que moins efficaces, les CTE offrent une autre approche pour calculer les pourcentages :

<code class="language-sql">WITH t(Grade, GradeCount) AS (
    SELECT Grade, COUNT(*)
    FROM MyTable
    GROUP BY Grade
)
SELECT Grade, GradeCount * 100.0 / (SELECT SUM(GradeCount) FROM t)
FROM t;</code>
Copier après la connexion

Ces techniques offrent une flexibilité dans la gestion de diverses données et fournissent des distributions de pourcentage précises. Les analystes de données peuvent utiliser ces méthodes pour résumer et interpréter efficacement les données dans leurs tableaux.

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