Dans une requ=EAte j'ai un champ =AB Age =BB, et un champ =AB Titre =BB
qui contient les valeurs suivantes :
=AB M =BB, =AB MME =BB, =AB MLLE =BB.
Je voudrai Conna=EEtre le nombre de M, MME, MLLE par tranche d'=E2ge.
J'ai utilis=E9e cette fonction de domaine de cette fa=E7on mais
j'obtiens des valeurs pour toute la table
SELECT [rqt Adh=E9rents].Titre, [rqt Adh=E9rents].Age, DCount("*","[rqt
adh=E9rents]","[titre] =3D'M' ") AS M, DCount("*","[rqt
adh=E9rents]","[titre] =3D'MME' ") AS MME, DCount("*","[rqt
adh=E9rents]","[titre] =3D'MLLE' ") AS MLLE
FROM [rqt Adh=E9rents]
WHERE ((([rqt Adh=E9rents].Age) Between 4 And 8));
J'ai aussi essay=E9 en faisant le trie sur une premi=E8re requ=EAte puis
compter sur une autre mais je n'y arrive pas.
Je pense que c'est la notion de groupe qui te manque (GROUP BY) : dans la requête, activer la fonction de groupage. En SQL, cela donnerai : select TITRE, AGE, count(*) from TA_TABLE group by TITRE, AGE Tu obtiendra 1 ligne par couple TITRE/AGE comportant : - TITRE - AGE - le nombre de couple TITRE/AGE
Bon courage. Richard.
a écrit dans le message de news:
Bonsoir,
Dans une requête j'ai un champ « Age », et un champ « Titre » qui contient les valeurs suivantes : « M », « MME », « MLLE ». Je voudrai Connaître le nombre de M, MME, MLLE par tranche d'âge. J'ai utilisée cette fonction de domaine de cette façon mais j'obtiens des valeurs pour toute la table
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, DCount("*","[rqt adhérents]","[titre] ='M' ") AS M, DCount("*","[rqt adhérents]","[titre] ='MME' ") AS MME, DCount("*","[rqt adhérents]","[titre] ='MLLE' ") AS MLLE FROM [rqt Adhérents] WHERE ((([rqt Adhérents].Age) Between 4 And 8));
J'ai aussi essayé en faisant le trie sur une première requête puis compter sur une autre mais je n'y arrive pas.
Merci pour votre aide.
Salutations.
Bonsoir,
Je pense que c'est la notion de groupe qui te manque (GROUP BY) : dans
la requête, activer la fonction de groupage.
En SQL, cela donnerai :
select TITRE, AGE, count(*) from TA_TABLE group by TITRE, AGE
Tu obtiendra 1 ligne par couple TITRE/AGE comportant :
- TITRE
- AGE
- le nombre de couple TITRE/AGE
Bon courage.
Richard.
<jg1@neuf.fr> a écrit dans le message de news:
1145909910.901610.250760@y43g2000cwc.googlegroups.com...
Bonsoir,
Dans une requête j'ai un champ « Age », et un champ « Titre »
qui contient les valeurs suivantes :
« M », « MME », « MLLE ».
Je voudrai Connaître le nombre de M, MME, MLLE par tranche d'âge.
J'ai utilisée cette fonction de domaine de cette façon mais
j'obtiens des valeurs pour toute la table
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, DCount("*","[rqt
adhérents]","[titre] ='M' ") AS M, DCount("*","[rqt
adhérents]","[titre] ='MME' ") AS MME, DCount("*","[rqt
adhérents]","[titre] ='MLLE' ") AS MLLE
FROM [rqt Adhérents]
WHERE ((([rqt Adhérents].Age) Between 4 And 8));
J'ai aussi essayé en faisant le trie sur une première requête puis
compter sur une autre mais je n'y arrive pas.
Je pense que c'est la notion de groupe qui te manque (GROUP BY) : dans la requête, activer la fonction de groupage. En SQL, cela donnerai : select TITRE, AGE, count(*) from TA_TABLE group by TITRE, AGE Tu obtiendra 1 ligne par couple TITRE/AGE comportant : - TITRE - AGE - le nombre de couple TITRE/AGE
Bon courage. Richard.
a écrit dans le message de news:
Bonsoir,
Dans une requête j'ai un champ « Age », et un champ « Titre » qui contient les valeurs suivantes : « M », « MME », « MLLE ». Je voudrai Connaître le nombre de M, MME, MLLE par tranche d'âge. J'ai utilisée cette fonction de domaine de cette façon mais j'obtiens des valeurs pour toute la table
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, DCount("*","[rqt adhérents]","[titre] ='M' ") AS M, DCount("*","[rqt adhérents]","[titre] ='MME' ") AS MME, DCount("*","[rqt adhérents]","[titre] ='MLLE' ") AS MLLE FROM [rqt Adhérents] WHERE ((([rqt Adhérents].Age) Between 4 And 8));
J'ai aussi essayé en faisant le trie sur une première requête puis compter sur une autre mais je n'y arrive pas.
Merci pour votre aide.
Salutations.
jg1
Bonjour,
Merci pour ta réponse, mais tu ne tiens pas compte du Where. Dans mon cas je voudrai avoir par exemple sur la tranche d'âge 4 à 8 ans la somme des M, MME, MLLE;
Salutations.
Bonjour,
Merci pour ta réponse, mais tu ne tiens pas compte du Where.
Dans mon cas je voudrai avoir par exemple sur la tranche d'âge 4 à 8
ans la somme des M, MME, MLLE;
Merci pour ta réponse, mais tu ne tiens pas compte du Where. Dans mon cas je voudrai avoir par exemple sur la tranche d'âge 4 à 8 ans la somme des M, MME, MLLE;
Salutations.
Richard_35
Bonjour,
Une fois que tu as ta requête : REQUETE = select TITRE, AGE, count(*) from TA_TABLE group by TITRE, AGE Comportant 1 ligne par couple TITRE/AGE : - TITRE - AGE - le nombre de couple TITRE/AGE
Tu peux analyser le résultat comme tu le veux ! select count(*) from REQUETE where AGE between 4 and 8 ==> tous TITRE confondus select TITRE, count(*) from REQUETE where AGE between 4 and 8 group by TITRE ==> par TITRE
Bon courage, Richard.
a écrit dans le message de news:
Bonjour,
Merci pour ta réponse, mais tu ne tiens pas compte du Where. Dans mon cas je voudrai avoir par exemple sur la tranche d'âge 4 à 8 ans la somme des M, MME, MLLE;
Salutations.
Bonjour,
Une fois que tu as ta requête :
REQUETE = select TITRE, AGE, count(*) from TA_TABLE group by TITRE, AGE
Comportant 1 ligne par couple TITRE/AGE :
- TITRE
- AGE
- le nombre de couple TITRE/AGE
Tu peux analyser le résultat comme tu le veux !
select count(*) from REQUETE where AGE between 4 and 8 ==> tous TITRE
confondus
select TITRE, count(*) from REQUETE where AGE between 4 and 8 group by TITRE
==> par TITRE
Bon courage,
Richard.
<jg1@neuf.fr> a écrit dans le message de news:
1145953039.629125.224400@t31g2000cwb.googlegroups.com...
Bonjour,
Merci pour ta réponse, mais tu ne tiens pas compte du Where.
Dans mon cas je voudrai avoir par exemple sur la tranche d'âge 4 à 8
ans la somme des M, MME, MLLE;
Une fois que tu as ta requête : REQUETE = select TITRE, AGE, count(*) from TA_TABLE group by TITRE, AGE Comportant 1 ligne par couple TITRE/AGE : - TITRE - AGE - le nombre de couple TITRE/AGE
Tu peux analyser le résultat comme tu le veux ! select count(*) from REQUETE where AGE between 4 and 8 ==> tous TITRE confondus select TITRE, count(*) from REQUETE where AGE between 4 and 8 group by TITRE ==> par TITRE
Bon courage, Richard.
a écrit dans le message de news:
Bonjour,
Merci pour ta réponse, mais tu ne tiens pas compte du Where. Dans mon cas je voudrai avoir par exemple sur la tranche d'âge 4 à 8 ans la somme des M, MME, MLLE;
Salutations.
jg1
Bonjour Richard,
Je n'y arrive pas, ci-joint les deux Requêtes. Pour la première Requête, je pense qu'elle est correcte ?
1ère Requête =
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS TotalTitre FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
2 ème Requête =
SELECT Requête.Titre, Requête.Age, Requête.TotalTitre, Count(*) AS CompteDeTotalTitre FROM Requête GROUP BY Requête.Titre, Requête.Age, Requête.TotalTitre HAVING (((Requête.Titre)="M") AND ((Requête.Age) Between 4 And 8));
Je n'y arrive pas, ci-joint les deux Requêtes. Pour la première
Requête, je pense qu'elle est correcte ?
1ère Requête =
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS
TotalTitre
FROM [rqt Adhérents]
GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
2 ème Requête =
SELECT Requête.Titre, Requête.Age, Requête.TotalTitre, Count(*) AS
CompteDeTotalTitre
FROM Requête
GROUP BY Requête.Titre, Requête.Age, Requête.TotalTitre
HAVING (((Requête.Titre)="M") AND ((Requête.Age) Between 4 And 8));
Je n'y arrive pas, ci-joint les deux Requêtes. Pour la première Requête, je pense qu'elle est correcte ?
1ère Requête =
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS TotalTitre FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
2 ème Requête =
SELECT Requête.Titre, Requête.Age, Requête.TotalTitre, Count(*) AS CompteDeTotalTitre FROM Requête GROUP BY Requête.Titre, Requête.Age, Requête.TotalTitre HAVING (((Requête.Titre)="M") AND ((Requête.Age) Between 4 And 8));
Tu veux donc que tous les couples TITRE/AGE contiennent la somme du TITRE concerné, tout AGE confondu. Est-ce bien cela ?
a écrit dans le message de news:
Bonjour Richard,
Je n'y arrive pas, ci-joint les deux Requêtes. Pour la première Requête, je pense qu'elle est correcte ?
1ère Requête SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS TotalTitre FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
2 ème Requête SELECT Requête.Titre, Requête.Age, Requête.TotalTitre, Count(*) AS CompteDeTotalTitre FROM Requête GROUP BY Requête.Titre, Requête.Age, Requête.TotalTitre HAVING (((Requête.Titre)="M") AND ((Requête.Age) Between 4 And 8));
Tu veux donc que tous les couples TITRE/AGE contiennent la somme du TITRE
concerné, tout AGE confondu.
Est-ce bien cela ?
<jg1@neuf.fr> a écrit dans le message de news:
1146063039.348126.273220@g10g2000cwb.googlegroups.com...
Bonjour Richard,
Je n'y arrive pas, ci-joint les deux Requêtes. Pour la première
Requête, je pense qu'elle est correcte ?
1ère Requête
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS
TotalTitre
FROM [rqt Adhérents]
GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
2 ème Requête
SELECT Requête.Titre, Requête.Age, Requête.TotalTitre, Count(*) AS
CompteDeTotalTitre
FROM Requête
GROUP BY Requête.Titre, Requête.Age, Requête.TotalTitre
HAVING (((Requête.Titre)="M") AND ((Requête.Age) Between 4 And 8));
Tu veux donc que tous les couples TITRE/AGE contiennent la somme du TITRE concerné, tout AGE confondu. Est-ce bien cela ?
a écrit dans le message de news:
Bonjour Richard,
Je n'y arrive pas, ci-joint les deux Requêtes. Pour la première Requête, je pense qu'elle est correcte ?
1ère Requête SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS TotalTitre FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
2 ème Requête SELECT Requête.Titre, Requête.Age, Requête.TotalTitre, Count(*) AS CompteDeTotalTitre FROM Requête GROUP BY Requête.Titre, Requête.Age, Requête.TotalTitre HAVING (((Requête.Titre)="M") AND ((Requête.Age) Between 4 And 8));
Oui c'est cela ,je veux connaître uniquement le nombre de M,MME,MLLE, dans différentes tranches d'âges.
Salutations
Richard_35
Essayes cela :
Requête1 SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS TotalTitreAge FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
Requête2 SELECT [rqt Adhérents].Titre, Count(*) AS TotalTitre FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre;
Il faut ensuite créer une Requête3 qui lie Requête1 à Requête2 via [rqt Adhérents].Titre. Tu auras donc 1 ligne par TITRE/AGE avec, pour chaque ligne, le nombre global du TITRE concerné. Enfin, tu pourras travailler ta Requête3 avec les tranches d'âges qui vont bien. OK ?
a écrit dans le message de news:
Bonsoir,
Oui c'est cela ,je veux connaître uniquement le nombre de M,MME,MLLE, dans différentes tranches d'âges.
Salutations
Essayes cela :
Requête1 SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS
TotalTitreAge
FROM [rqt Adhérents]
GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
Requête2 SELECT [rqt Adhérents].Titre, Count(*) AS
TotalTitre
FROM [rqt Adhérents]
GROUP BY [rqt Adhérents].Titre;
Il faut ensuite créer une Requête3 qui lie Requête1 à Requête2 via [rqt
Adhérents].Titre.
Tu auras donc 1 ligne par TITRE/AGE avec, pour chaque ligne, le nombre
global du TITRE concerné.
Enfin, tu pourras travailler ta Requête3 avec les tranches d'âges qui vont
bien.
OK ?
<jg1@neuf.fr> a écrit dans le message de news:
1146070380.680053.12680@t31g2000cwb.googlegroups.com...
Bonsoir,
Oui c'est cela ,je veux connaître uniquement le nombre de M,MME,MLLE,
dans différentes tranches d'âges.
Requête1 SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, Count(*) AS TotalTitreAge FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre, [rqt Adhérents].Age;
Requête2 SELECT [rqt Adhérents].Titre, Count(*) AS TotalTitre FROM [rqt Adhérents] GROUP BY [rqt Adhérents].Titre;
Il faut ensuite créer une Requête3 qui lie Requête1 à Requête2 via [rqt Adhérents].Titre. Tu auras donc 1 ligne par TITRE/AGE avec, pour chaque ligne, le nombre global du TITRE concerné. Enfin, tu pourras travailler ta Requête3 avec les tranches d'âges qui vont bien. OK ?
a écrit dans le message de news:
Bonsoir,
Oui c'est cela ,je veux connaître uniquement le nombre de M,MME,MLLE, dans différentes tranches d'âges.
Salutations
Eric
Bonjour,
Je n'ai pas tout lu mais il te suffit de faire la requête suivante sur la requête ayant les champs TITRE et AGE, soit [rqt Adhérents] cette requête.
Alors pour avoir le nb de personnes dont le titre est M, MLLE ou MME (si jeune(s) et déjà mariée(s) !!! ;-) ) pour la tranche des 4-8 ans, tu fais : SELECT [rqt Adhérents].Titre, Count(Age) As Nombre FROM [rqt Adhérents] WHERE Age BETWEEN 4 And 8 GROUP BY [rqt Adhérents].Titre
Bonsoir,
Dans une requête j'ai un champ « Age », et un champ « Titre » qui contient les valeurs suivantes : « M », « MME », « MLLE ». Je voudrai Connaître le nombre de M, MME, MLLE par tranche d'âge. J'ai utilisée cette fonction de domaine de cette façon mais j'obtiens des valeurs pour toute la table
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, DCount("*","[rqt adhérents]","[titre] ='M' ") AS M, DCount("*","[rqt adhérents]","[titre] ='MME' ") AS MME, DCount("*","[rqt adhérents]","[titre] ='MLLE' ") AS MLLE FROM [rqt Adhérents] WHERE ((([rqt Adhérents].Age) Between 4 And 8));
J'ai aussi essayé en faisant le trie sur une première requête puis compter sur une autre mais je n'y arrive pas.
Merci pour votre aide.
Salutations.
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Je n'ai pas tout lu mais il te suffit de faire la requête suivante sur
la requête ayant les champs TITRE et AGE, soit [rqt Adhérents] cette
requête.
Alors pour avoir le nb de personnes dont le titre est M, MLLE ou MME (si
jeune(s) et déjà mariée(s) !!! ;-) ) pour la tranche des 4-8 ans, tu fais :
SELECT [rqt Adhérents].Titre, Count(Age) As Nombre
FROM [rqt Adhérents]
WHERE Age BETWEEN 4 And 8
GROUP BY [rqt Adhérents].Titre
Bonsoir,
Dans une requête j'ai un champ « Age », et un champ « Titre »
qui contient les valeurs suivantes :
« M », « MME », « MLLE ».
Je voudrai Connaître le nombre de M, MME, MLLE par tranche d'âge.
J'ai utilisée cette fonction de domaine de cette façon mais
j'obtiens des valeurs pour toute la table
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, DCount("*","[rqt
adhérents]","[titre] ='M' ") AS M, DCount("*","[rqt
adhérents]","[titre] ='MME' ") AS MME, DCount("*","[rqt
adhérents]","[titre] ='MLLE' ") AS MLLE
FROM [rqt Adhérents]
WHERE ((([rqt Adhérents].Age) Between 4 And 8));
J'ai aussi essayé en faisant le trie sur une première requête puis
compter sur une autre mais je n'y arrive pas.
Merci pour votre aide.
Salutations.
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Je n'ai pas tout lu mais il te suffit de faire la requête suivante sur la requête ayant les champs TITRE et AGE, soit [rqt Adhérents] cette requête.
Alors pour avoir le nb de personnes dont le titre est M, MLLE ou MME (si jeune(s) et déjà mariée(s) !!! ;-) ) pour la tranche des 4-8 ans, tu fais : SELECT [rqt Adhérents].Titre, Count(Age) As Nombre FROM [rqt Adhérents] WHERE Age BETWEEN 4 And 8 GROUP BY [rqt Adhérents].Titre
Bonsoir,
Dans une requête j'ai un champ « Age », et un champ « Titre » qui contient les valeurs suivantes : « M », « MME », « MLLE ». Je voudrai Connaître le nombre de M, MME, MLLE par tranche d'âge. J'ai utilisée cette fonction de domaine de cette façon mais j'obtiens des valeurs pour toute la table
SELECT [rqt Adhérents].Titre, [rqt Adhérents].Age, DCount("*","[rqt adhérents]","[titre] ='M' ") AS M, DCount("*","[rqt adhérents]","[titre] ='MME' ") AS MME, DCount("*","[rqt adhérents]","[titre] ='MLLE' ") AS MLLE FROM [rqt Adhérents] WHERE ((([rqt Adhérents].Age) Between 4 And 8));
J'ai aussi essayé en faisant le trie sur une première requête puis compter sur une autre mais je n'y arrive pas.
Merci pour votre aide.
Salutations.
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Eric
Bonjour,
Pour le fun, tu peux faire une requête Analyse croisée qui te donnera, pour chaque tranche d'age dans un intervalle de temps donné, le nb de personnes dont le titre est M, MME, MLLE en utilisant la fonction Partition().
Le SQL, toujours construit sur ta requête [rqt Adhérents] serait du genre : TRANSFORM Count(Age) AS CompteDeAge SELECT Titre FROM [rqt Adhérents] GROUP BY Titre ORDER BY Titre PIVOT Partition([Age],0,100,10);
PS:j'ai vu large puisque les bornes de l'intervalle de temps sont 0-100 avec un pas de 10. Les tranches pour lesquelles il n'y a pas de valeur n'apparaîtront pas.
Exemple de résultats: Titre 30:39 40:49 50:59 60:69 Madame 5 4 1 2 Mademoiselle 1 2 5 2 Monsieur 1 2 3
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Pour le fun, tu peux faire une requête Analyse croisée qui te donnera,
pour chaque tranche d'age dans un intervalle de temps donné, le nb de
personnes dont le titre est M, MME, MLLE en utilisant la fonction
Partition().
Le SQL, toujours construit sur ta requête [rqt Adhérents] serait du genre :
TRANSFORM Count(Age) AS CompteDeAge
SELECT Titre
FROM [rqt Adhérents]
GROUP BY Titre
ORDER BY Titre
PIVOT Partition([Age],0,100,10);
PS:j'ai vu large puisque les bornes de l'intervalle de temps sont 0-100
avec un pas de 10. Les tranches pour lesquelles il n'y a pas de valeur
n'apparaîtront pas.
Exemple de résultats:
Titre 30:39 40:49 50:59 60:69
Madame 5 4 1 2
Mademoiselle 1 2 5 2
Monsieur 1 2 3
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Pour le fun, tu peux faire une requête Analyse croisée qui te donnera, pour chaque tranche d'age dans un intervalle de temps donné, le nb de personnes dont le titre est M, MME, MLLE en utilisant la fonction Partition().
Le SQL, toujours construit sur ta requête [rqt Adhérents] serait du genre : TRANSFORM Count(Age) AS CompteDeAge SELECT Titre FROM [rqt Adhérents] GROUP BY Titre ORDER BY Titre PIVOT Partition([Age],0,100,10);
PS:j'ai vu large puisque les bornes de l'intervalle de temps sont 0-100 avec un pas de 10. Les tranches pour lesquelles il n'y a pas de valeur n'apparaîtront pas.
Exemple de résultats: Titre 30:39 40:49 50:59 60:69 Madame 5 4 1 2 Mademoiselle 1 2 5 2 Monsieur 1 2 3
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
jg1
Bonjour Eric,
Merci pour ta réponse. Ta solution m'intéresse aussi. Après avoir terminé avec Richard_35 j'essayerai de la reproduire et te demanderai de l'aide éventuellement.
Salutations.
Bonjour Eric,
Merci pour ta réponse. Ta solution m'intéresse aussi. Après avoir
terminé avec Richard_35 j'essayerai de la reproduire et te demanderai
de l'aide éventuellement.
Merci pour ta réponse. Ta solution m'intéresse aussi. Après avoir terminé avec Richard_35 j'essayerai de la reproduire et te demanderai de l'aide éventuellement.