Comment calculer la médiane en sql

Calculer la médiane dans SQL

Calculer la médiane dans SQL

Video: Calculer une médiane - Première

Le calcul de la médiane d`un ensemble est plus difficile que le simple calcul de la moyenne ou moyenne d`un ensemble. Ajouter dans la syntaxe et de la complexité de SQL et la tâche peut sembler insurmontable au premier abord. Mais avec quelques concepts simples et quelques exemples, le calcul de la valeur médiane est pas de sueur. Cette façon à utilisera pour ses exemples Transact-SQL.

Trouver la médiane

Comprendre la différence entre la médiane et la moyenne d`un ensemble. La médiane est la "La valeur moyenne" d`un ensemble, tandis que la moyenne est la moyenne de tous les éléments d`un ensemble. Par exemple, étant donné un ensemble ordonné de nombres {1, 2, 6, 9, 10, 11}, la médiane sera de 7,5 ([6 + 9] / 2), mais la moyenne est de 6,5 ([1 + 2 + 6 + 9 + 10 + 11] / 6). Pour calculer la médiane, compter le nombre d`éléments dans l`ensemble. Si le nombre est pair, prendre la moyenne de l`élément à la position se trouve en comptant les éléments totaux et en divisant par deux et la position trouvée en divisant le nombre total d`éléments par 2 et en ajoutant une. Si le nombre est impair, prendre l`élément à la position marquée par le nombre total divisé par deux et arrondi au nombre entier le plus proche.

Créer un ensemble ordonné de nombres avec un nouvel indice intégral. Par exemple, si les données numériques sont stockées dans la "num" colonne du "Les données" table, créer une nouvelle table temporaire contenant le "num" valeur avec un nouvel indice: CREATE TABLE #values ​​(ID int NON IDENTITÉ NULL (1,1), numérique num (9,4)) INSERT INTO #values ​​(num) SELECT num à partir des données ORDER BY num ORDER BY est très important pour le calcul de la médiane.

Sélectionnez les données de la table temporaire où l`ID est égal à la moitié du nombre d`enregistrements dans le tableau. S`il y a un nombre impair d`enregistrements, prendre la moyenne des deux valeurs que la médiane finale. Ceci peut être accompli dans la requête unique: SELECT MOYENNE (num) DE #values ​​v JOIN (SELECT COUNT (*) AS cnt DE #values ​​_v) c ON (c.ID = PLAFOND (_v.cnt / 2.0) ET ( _v.cnt% 2 = 1 - cnt est impair OR (_v.cnt% 2 = 0 - cnt est pair et c.ID = (_v.cnt / 2,0) + 1))) Cette requête utilise une sous-requête pour rechercher le nombre d`enregistrements de sorte que la valeur moyenne peut être déterminée. Dans les deux cas d`un compte pair et un nombre impair, l`utilisation de plafond pour arrondir (_v.cnt / 2.0) est exacte. (Par exemple, Even: 6/2 = 3- Odd: 7/2 = 3,5, qui est arrondi à 4) En outre, lorsque le nombre est pair, ajouter 1 à (_v.cnt / 2.0) pour obtenir le deuxième élément à inclure dans la médiane finale.

Pointe

  • vérifier Si vous utilisez une version récente de Microsoft SQL Server, tels que 2005 ou 2008, vous pouvez utiliser "Expressions table commune" au lieu de créer une table temporaire. En fonction de ce qui peut fournir la configuration de votre schéma et le serveur, une augmentation des performances.

Articles Tu auras besoin de

Les références

  • lien Moyenne, médiane, mode et Range

Video: Médiane ou classe médiane d'une série statistique. Kiffelesmaths.com

A propos de l`auteur

Daniel James est actuellement un développeur de logiciels, écrivain et entrepreneur en Californie du Sud. Depuis 1999, il a construit une carrière dans la technologie de l`information, et en 2006 a commencé à présenter des exposés techniques sur l`ingénierie et la visualisation des logiciels.

Video: Calculer la médiane d'une variable continue avec interpolation lineaire

Articles connexes