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
Créer un fichier PDF de la contribution Imprimer


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.........
Créer un fichier PDF de la contribution Imprimer


Re: Requete SQL pour compter le nombre de personnes (majeurs et mineurs)

Inscrit:
18/12/2003 13:14
Post(s): 212
Bonjour

Essayes 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
_________________
Bonne Chance.
M'envoyer un message......
Créer un fichier PDF de la contribution Imprimer


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
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