[sql] calcul de Frequence ( math pas electronique )
2 réponses
olivier
bonjour,
j'ai un petit souci,
qui aurait une methode " esthetique " pour calculer une frequence,
explication :
j'ai une table d'environ 3500 enregistrement de 10 champs chacun,
les champs sont tous des valeurs numerique entre 0 et 80 + clef primaire
assuré par une date,
je voudrait donc savoir combien de fois sort le 1; le 2 le 3 etc ( quel
que soit le champ, le comptage se faisant à l'enregistrement).
j'y arrive par une serie de COUNT pas trés jolie....
Si quelqu'un aurait une "belle" solution...
2eme truc,
je cherche aussi une solution "agréable a l'oeil" pour calculer un cycle
d'ecart
en clair savoir quel valeur sort en moyenne tout les combien
d'enregistrement.
Pour info je vais les rentrer dans le module Bd de openoffice ( pas de
commentaire SVP ) ( j'ai la fonction frequence de calc, mais c'est une
question de principe et peut etre vitesse )
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Antoun
olivier wrote:
bonjour, j'ai un petit souci, qui aurait une methode " esthetique " pour calculer une frequence, explication : j'ai une table d'environ 3500 enregistrement de 10 champs chacun, les champs sont tous des valeurs numerique entre 0 et 80 + clef primaire assuré par une date, je voudrait donc savoir combien de fois sort le 1; le 2 le 3 etc ( quel que soit le champ, le comptage se faisant à l'enregistrement). j'y arrive par une serie de COUNT pas trés jolie.... Si quelqu'un aurait une "belle" solution...
L'idéal serait de changer ta modélisation en qqch comme ça :
Cela te permet de faire ensuite l'une ou l'autre de ces deux requêtes :
-- si la même valeur apparaît dans ch1 et ch2, -- elle n'est comptée qu'une fois Select VALEUR, COUNT(Distinct DATECLE) As FREQUENCE From TABLE Group By Valeur
-- si la même valeur apparaît à la fois dans ch1 et ch2 -- à la même date-clé, elle est comptée deux fois -- (ou bien elle ne peut apparaître deux fois) Select VALEUR, COUNT(*) As FREQUENCE From TABLE Group By Valeur
Pour ton cycle d'écart, je ne sais pas comment cela se calcule, mais je suis sûr qu'améliorer ta modélisation simplifierait bcp le pb...
olivier wrote:
bonjour,
j'ai un petit souci,
qui aurait une methode " esthetique " pour calculer une frequence,
explication :
j'ai une table d'environ 3500 enregistrement de 10 champs chacun,
les champs sont tous des valeurs numerique entre 0 et 80 + clef primaire
assuré par une date,
je voudrait donc savoir combien de fois sort le 1; le 2 le 3 etc ( quel
que soit le champ, le comptage se faisant à l'enregistrement).
j'y arrive par une serie de COUNT pas trés jolie....
Si quelqu'un aurait une "belle" solution...
L'idéal serait de changer ta modélisation en qqch comme ça :
Cela te permet de faire ensuite l'une ou l'autre de ces deux requêtes :
-- si la même valeur apparaît dans ch1 et ch2,
-- elle n'est comptée qu'une fois
Select VALEUR, COUNT(Distinct DATECLE) As FREQUENCE
From TABLE
Group By Valeur
-- si la même valeur apparaît à la fois dans ch1 et ch2
-- à la même date-clé, elle est comptée deux fois
-- (ou bien elle ne peut apparaître deux fois)
Select VALEUR, COUNT(*) As FREQUENCE
From TABLE
Group By Valeur
Pour ton cycle d'écart, je ne sais pas comment cela se calcule, mais je
suis sûr qu'améliorer ta modélisation simplifierait bcp le pb...
bonjour, j'ai un petit souci, qui aurait une methode " esthetique " pour calculer une frequence, explication : j'ai une table d'environ 3500 enregistrement de 10 champs chacun, les champs sont tous des valeurs numerique entre 0 et 80 + clef primaire assuré par une date, je voudrait donc savoir combien de fois sort le 1; le 2 le 3 etc ( quel que soit le champ, le comptage se faisant à l'enregistrement). j'y arrive par une serie de COUNT pas trés jolie.... Si quelqu'un aurait une "belle" solution...
L'idéal serait de changer ta modélisation en qqch comme ça :
Cela te permet de faire ensuite l'une ou l'autre de ces deux requêtes :
-- si la même valeur apparaît dans ch1 et ch2, -- elle n'est comptée qu'une fois Select VALEUR, COUNT(Distinct DATECLE) As FREQUENCE From TABLE Group By Valeur
-- si la même valeur apparaît à la fois dans ch1 et ch2 -- à la même date-clé, elle est comptée deux fois -- (ou bien elle ne peut apparaître deux fois) Select VALEUR, COUNT(*) As FREQUENCE From TABLE Group By Valeur
Pour ton cycle d'écart, je ne sais pas comment cela se calcule, mais je suis sûr qu'améliorer ta modélisation simplifierait bcp le pb...
Antoun
olivier wrote:
bonjour, j'ai un petit souci, qui aurait une methode " esthetique " pour calculer une frequence, explication : j'ai une table d'environ 3500 enregistrement de 10 champs chacun, les champs sont tous des valeurs numerique entre 0 et 80 + clef primaire assuré par une date, je voudrait donc savoir combien de fois sort le 1; le 2 le 3 etc ( quel que soit le champ, le comptage se faisant à l'enregistrement). j'y arrive par une serie de COUNT pas trés jolie.... Si quelqu'un aurait une "belle" solution...
si par contre tu ne peux pas changer ta modélisation, il te faut une table contenant les entiers des 0 à 80 (j'espère tes valeurs sont entières au moins ?).
Select E.ENTIER, COUNT(*) As FREQUENCE From T_ENTIERS E Inner Join T_TA_TABLE T On E.ENTIER In (T.CH1, T.CH2, T.CH3 ... T.CH10) Group By E.ENTIER
à noter que dans le cas où la même valeur apparaisse dans plusieurs champs à la même date-clé, elle ne sera comptée qu'une seule fois.
olivier wrote:
bonjour,
j'ai un petit souci,
qui aurait une methode " esthetique " pour calculer une frequence,
explication :
j'ai une table d'environ 3500 enregistrement de 10 champs chacun,
les champs sont tous des valeurs numerique entre 0 et 80 + clef primaire
assuré par une date,
je voudrait donc savoir combien de fois sort le 1; le 2 le 3 etc ( quel
que soit le champ, le comptage se faisant à l'enregistrement).
j'y arrive par une serie de COUNT pas trés jolie....
Si quelqu'un aurait une "belle" solution...
si par contre tu ne peux pas changer ta modélisation, il te faut une
table contenant les entiers des 0 à 80 (j'espère tes valeurs sont
entières au moins ?).
bonjour, j'ai un petit souci, qui aurait une methode " esthetique " pour calculer une frequence, explication : j'ai une table d'environ 3500 enregistrement de 10 champs chacun, les champs sont tous des valeurs numerique entre 0 et 80 + clef primaire assuré par une date, je voudrait donc savoir combien de fois sort le 1; le 2 le 3 etc ( quel que soit le champ, le comptage se faisant à l'enregistrement). j'y arrive par une serie de COUNT pas trés jolie.... Si quelqu'un aurait une "belle" solution...
si par contre tu ne peux pas changer ta modélisation, il te faut une table contenant les entiers des 0 à 80 (j'espère tes valeurs sont entières au moins ?).