[Résolu] Requête SQL
Utilisateur WDF
Inscrit:
10/02/2005 16:33
Post(s): 67
Bonjour,

J'ai un tit soucis avec le langage SQL. Je vous explique ^^
J'ai une table contenant un champs TYPE qui est soit égale à 1 soit égale à 0.

J'aimerai en une requête, compter le nombre de TYPE égale à 1 et nombre de TYPE égale à 0. J'avoue que je n'y arrive pas ...

Je pourrai le faire en 2 requêtes, mais beaucoup trop lent en terme d'éxécution ... Parce que je dois faire ça avec plusieurs autres champs du même type.

Merci d'avance de votre aide ^^

Contribution le : 31/05/2005 10:47
Créer un fichier PDF de la contribution Imprimer


Re: Requête SQL
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Hum ! (rires étoufés)

Bonjour,
Dans un ensemble, si un élément ne prend pour valeur 0 ou 1, le comptage des valeurs à 1 est le complément du nombre de celles à 0 et réciproquement.

Par conséquent, il suffit de faire la différence entre le nombre de valeur à 1 avec le NOMBRE TOTAL d'enregistrements pour trouver le nombre de valeurs à 0.

Conséquence : HNBEnr() + 1 requête et vous aurez la solution dans un délais convenable.

La Forge est avec vous

Contribution le : 31/05/2005 11:51
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Requête SQL
Utilisateur WDF
Inscrit:
10/02/2005 16:33
Post(s): 67
^^ *crises de rires*

Je me suis mal exprimés ! Je viens de relire mon post et effectivement, vu sous cet angle je me casse la tête lol (Comme quoi faut se relire)

En même temps, je n'y avais pas pensé pour ce cas (huhu) Bref ! Cas plus complexe alors. J'ai un champs numérique, qui peut avoir pour valeur 1,2,3,4 ou 5.

J'ai une liste multi-sélection avec comme option 1,2,3,4 ou 5. J'ai une table mémoire avec 2 colonnes. Dans la première colonne je veux afficher le résultat du comptage lorsque TYPE = 2 et dans l'autre colonne le reste.

Ex : Je sélectionne dans la liste 2, 3 et 5. Dans la colonne un il y aura par exemple 25 et dans la colonne 2 15 (cumul des type 3 et 5)

*relecture* ... J'espère que c'est suffisamment clair ^^

Contribution le : 31/05/2005 12:13
Créer un fichier PDF de la contribution Imprimer


Re: Requête SQL
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Juste une idée, n'étant pas une valeur sûre du SQL :

SELECT TYPE,COUNT(*) FROM FICHIER GROUP BY TYPE


Cette requête devrait compter le nombre par groupe (et donc par type) et le parcours vous donner le résultat escompté. Merci de confirmer.

Contribution le : 31/05/2005 12:22
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Requête SQL
Utilisateur WDF
Inscrit:
10/02/2005 16:33
Post(s): 67
Ca marche, j'ai effectivment le compte par groupe, et le résultat me convient bien ^^ Il me suffira de faire un parcours de la requête pour sommer les groupes n'étant pas égale à 2 et ainsi je pourrai remplir mes 2 colonnes.

Je ne pense pas qu'il soit possible de faire mieux, sauf peut-être avec des select dans le select ... Merci de votre aide en tout cas ! ^^

(Et pour le fou rire lol)

Contribution le : 31/05/2005 12:46
Créer un fichier PDF de la contribution Imprimer


Re: Requête SQL
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Juste en complément, vu que vous ne disposez que de 5 types, en débuts de traitement, pourquoi ne pas alimenter une petite liste par programmation avec ce résultat ?
Il suffit ensuite d'utiliser des colonnes calculées :
//Affichage d'une ligne de TABLE
TABLE.TYPENB[TABLE]=ListeNB[TABLE.TYPE[TABLE]]


Contribution le : 31/05/2005 13:41
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Requête SQL
Utilisateur WDF
Inscrit:
10/02/2005 16:33
Post(s): 67
Merci pour ton aide et tes conseils ^^ Tout marche nickel !

Désolé de cette réponse tardive :p

Contribution le : 03/06/2005 09:15
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2