|
Requete SQL pour compter le nombre de personnes (majeurs et mineurs) |
|
Anonyme
|
Salut les amis Je dispose d'une table dans laquelle j'ai les info suivantes: Date de Naissance, Date de Deces et Sexe....J'aimerais créer une requete SQL qui sur la base du sexe compte le nombre de mineurs(Age mineur) et de majeurs(age Majeur). Age = (Date de Deces - Date de Naissance) J'apprecierai bien votre aide Sincerement
Contribution le : 21/04/2004 14:17
|
|
|
Re: Requete SQL pour compter le nombre de personnes (majeurs et mineurs) |
|
Stagiaire WDF
Inscrit: 19/04/2004 14:57
Post(s): 20
|
je sais pas si tu pourras denombrer les mineurs ET les majeurs dans la meme requete... je te propose d en faire une pour les mineurs et une pour les majeurs
SELECT COUNT(*) AS NbMineurs, FROM WHERE DateDeces - DateNaissance < 18 AND SEXE = {Parametre}
SELECT COUNT(*) AS NbMajeurs, FROM WHERE DateDeces - DateNaissance > 17 AND SEXE = {Parametre}
si ca peut t aider...
Contribution le : 21/04/2004 14:55
|
_________________
esylanA-ture pouvait nous aider à programmer, on aurait jamais de problème.........
|
|
Re: Requete SQL pour compter le nombre de personnes (majeurs et mineurs) |
|
Inscrit: 18/12/2003 13:14
Post(s): 212
|
BonjourEssayes ce code :
Marequete est une Source de Données
req est une chaîne="SELECT Client.date_deces AS date_deces, Client.sexe AS sexe, Client.date_naissance AS date_naissance FROM Client"//toutes les enregistrements
HExécuteRequêteSQL(Marequete,hRequêteDéfaut,req)
counterMineurfemelle est un entier=0//compteur Femelles mineures
counTerMajeurfemelle est un entier=0//compteur femelles majeures
counterMineurMale est un entier=0//compteur males mineurs
counterMajeurMale est un entier=0//compteur males majeurs
age est entier
HLitPremier(Marequete)
TANTQUE PAS HEnDehors(Marequete)
dateDébut est une Date=Marequete.date_naissance
dateFin est une Date=Marequete.date_deces
LeSexe est une chaîne=Marequete.sexe
age=DateVersEntier(dateFin)-DateVersEntier(dateDébut)
SI age<6570 ALORS //6570=18 ans, tu peux changer
SI LeSexe="feminin" ALORS
counterMineurfemelle+=1
SINON
counterMineurMale+=1
FIN
SINON
SI LeSexe="feminin" ALORS
counTerMajeurfemelle+=1
SINON
counterMajeurMale+=1
FIN
FIN
HLitSuivant(Marequete)
FIN
TableAjouteLigne(Table1,"Feminin",counterMineurfemelle,counTerMajeurfemelle)
TableAjouteLigne(Table1,"Male",counterMineurMale,counterMajeurMale)
-->Comme on remarque, le résultat s'obtient dans une Table mémoire, on peux le faire dans un autre champ. -->les chaines utilisées "féminin" et "male" c'est selon ce que tu mets comme chaine pour désigner le sexe dans ton fichier.
Contribution le : 21/04/2004 16:55
|
|
|
Re: Requete SQL pour compter le nombre de personnes (majeurs et mineurs) |
|
Anonyme
|
Merci du fond du coeur....Je ne manquerai pas de l'essayer
Contribution le : 21/04/2004 18:29
|
|
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.