Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il faut
que si le résultat est NULL, la valeur retournée soit 0 (ma requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de donnée de mon
autre requête est considérée comme NULL et est donc ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il faut
que si le résultat est NULL, la valeur retournée soit 0 (ma requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de donnée de mon
autre requête est considérée comme NULL et est donc ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il faut
que si le résultat est NULL, la valeur retournée soit 0 (ma requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de donnée de mon
autre requête est considérée comme NULL et est donc ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette requête
?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0 (ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette requête
?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0 (ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette requête
?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0 (ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il faut
que si le résultat est NULL, la valeur retournée soit 0 (ma requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de donnée de mon
autre requête est considérée comme NULL et est donc ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il faut
que si le résultat est NULL, la valeur retournée soit 0 (ma requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de donnée de mon
autre requête est considérée comme NULL et est donc ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il faut
que si le résultat est NULL, la valeur retournée soit 0 (ma requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de donnée de mon
autre requête est considérée comme NULL et est donc ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Argyronet a écrit le 03/02/2009 à 13h26 :
> Bonjour,
>
> Avant d'aller plus loin, que donne le colonne Retours avec cette requête
> ?
> SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
> WHERE [Rg ia]>1
>
> --
> Argy
> http://argyronet.developpez.com/
> Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
> VBA pour Office 2007 (ISBN 2742983910)
>
>
>
> "yannickh" a écrit :
>
>> Bonjour,
>> J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
>> ia].
>> Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
>> faut
>> que si le résultat est NULL, la valeur retournée soit 0 (ma
>> requête est reprise
>> dans une autre et si j'ai un champ NULL, la ligne complète de
>> donnée de mon
>> autre requête est considérée comme NULL et est donc
>> ignorée...)
>> J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
>> être mauvaise.
>>
>> SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
>> Retours
>> FROM DECLARATIONS
>> WHERE (((DECLARATIONS.[Rg ia])>1))
>> GROUP BY DECLARATIONS.[Code Secteur];
>>
>> Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
>> pas non
>> plus les enregistrements NULL en 0. Ils restent NULL.
>>
>> Comment faire s'il vous plaît ?
>>
>> merci par avance.
>>
>> PS : j'ai essayé en remplaçant la fonction nz par la fonction
>> Iif mais la
>> résultante est la même. Il n'y a pas d'erreur mais ça ne
>> me retourne pas le
>> résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
>>
>>
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1 (2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102 avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons de lancer :) )
Argyronet a écrit le 03/02/2009 à 13h26 :
> Bonjour,
>
> Avant d'aller plus loin, que donne le colonne Retours avec cette requête
> ?
> SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
> WHERE [Rg ia]>1
>
> --
> Argy
> http://argyronet.developpez.com/
> Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
> VBA pour Office 2007 (ISBN 2742983910)
>
>
>
> "yannickh" a écrit :
>
>> Bonjour,
>> J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
>> ia].
>> Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
>> faut
>> que si le résultat est NULL, la valeur retournée soit 0 (ma
>> requête est reprise
>> dans une autre et si j'ai un champ NULL, la ligne complète de
>> donnée de mon
>> autre requête est considérée comme NULL et est donc
>> ignorée...)
>> J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
>> être mauvaise.
>>
>> SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
>> Retours
>> FROM DECLARATIONS
>> WHERE (((DECLARATIONS.[Rg ia])>1))
>> GROUP BY DECLARATIONS.[Code Secteur];
>>
>> Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
>> pas non
>> plus les enregistrements NULL en 0. Ils restent NULL.
>>
>> Comment faire s'il vous plaît ?
>>
>> merci par avance.
>>
>> PS : j'ai essayé en remplaçant la fonction nz par la fonction
>> Iif mais la
>> résultante est la même. Il n'y a pas d'erreur mais ça ne
>> me retourne pas le
>> résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
>>
>>
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1 (2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102 avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons de lancer :) )
Argyronet a écrit le 03/02/2009 à 13h26 :
> Bonjour,
>
> Avant d'aller plus loin, que donne le colonne Retours avec cette requête
> ?
> SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
> WHERE [Rg ia]>1
>
> --
> Argy
> http://argyronet.developpez.com/
> Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
> VBA pour Office 2007 (ISBN 2742983910)
>
>
>
> "yannickh" a écrit :
>
>> Bonjour,
>> J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
>> ia].
>> Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
>> faut
>> que si le résultat est NULL, la valeur retournée soit 0 (ma
>> requête est reprise
>> dans une autre et si j'ai un champ NULL, la ligne complète de
>> donnée de mon
>> autre requête est considérée comme NULL et est donc
>> ignorée...)
>> J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
>> être mauvaise.
>>
>> SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
>> Retours
>> FROM DECLARATIONS
>> WHERE (((DECLARATIONS.[Rg ia])>1))
>> GROUP BY DECLARATIONS.[Code Secteur];
>>
>> Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
>> pas non
>> plus les enregistrements NULL en 0. Ils restent NULL.
>>
>> Comment faire s'il vous plaît ?
>>
>> merci par avance.
>>
>> PS : j'ai essayé en remplaçant la fonction nz par la fonction
>> Iif mais la
>> résultante est la même. Il n'y a pas d'erreur mais ça ne
>> me retourne pas le
>> résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
>>
>>
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1 (2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102 avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons de lancer :) )
Bonjour,
"yannickh" a écrit dans le
message de news:Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0 (ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Il faut rajouter dans le jeu d'enregistrement la valeur nulle, donc :
SELECT T.[Code Secteur], Count(T.[Rg ia]) AS Retours
FROM DECLARATIONS AS T
WHERE (T.[Rg ia] Is NULL) Or (T.[Rg ia] > 1)
GROUP BY T.[Code Secteur];
Bonjour,
"yannickh" a écrit dans le
message de news:
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0 (ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Il faut rajouter dans le jeu d'enregistrement la valeur nulle, donc :
SELECT T.[Code Secteur], Count(T.[Rg ia]) AS Retours
FROM DECLARATIONS AS T
WHERE (T.[Rg ia] Is NULL) Or (T.[Rg ia] > 1)
GROUP BY T.[Code Secteur];
Bonjour,
"yannickh" a écrit dans le
message de news:Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0 (ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas convertis en 0).
Il faut rajouter dans le jeu d'enregistrement la valeur nulle, donc :
SELECT T.[Code Secteur], Count(T.[Rg ia]) AS Retours
FROM DECLARATIONS AS T
WHERE (T.[Rg ia] Is NULL) Or (T.[Rg ia] > 1)
GROUP BY T.[Code Secteur];
Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Argyronet a écrit le 03/02/2009 à 13h26 :
> Bonjour,
>
> Avant d'aller plus loin, que donne le colonne Retours avec cette
requête
> ?
> SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
> WHERE [Rg ia]>1
>
> --
> Argy
> http://argyronet.developpez.com/
> Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
> VBA pour Office 2007 (ISBN 2742983910)
>
>
>
> "yannickh" a écrit :
>
>> Bonjour,
>> J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rg
>> ia].
>> Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Il
>> faut
>> que si le résultat est NULL, la valeur retournée soit 0
(ma
>> requête est reprise
>> dans une autre et si j'ai un champ NULL, la ligne complète de
>> donnée de mon
>> autre requête est considérée comme NULL et est
donc
>> ignorée...)
>> J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doit
>> être mauvaise.
>>
>> SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
AS
>> Retours
>> FROM DECLARATIONS
>> WHERE (((DECLARATIONS.[Rg ia])>1))
>> GROUP BY DECLARATIONS.[Code Secteur];
>>
>> Cette requête ne me retourne pas de message d'erreur mais ne me
renvoie
>> pas non
>> plus les enregistrements NULL en 0. Ils restent NULL.
>>
>> Comment faire s'il vous plaît ?
>>
>> merci par avance.
>>
>> PS : j'ai essayé en remplaçant la fonction nz par la
fonction
>> Iif mais la
>> résultante est la même. Il n'y a pas d'erreur mais
ça ne
>> me retourne pas le
>> résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
>>
>>
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons
de lancer :) )
Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :
Argyronet a écrit le 03/02/2009 à 13h26 :
> Bonjour,
>
> Avant d'aller plus loin, que donne le colonne Retours avec cette
requête
> ?
> SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
> WHERE [Rg ia]>1
>
> --
> Argy
> http://argyronet.developpez.com/
> Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
> VBA pour Office 2007 (ISBN 2742983910)
>
>
>
> "yannickh" a écrit :
>
>> Bonjour,
>> J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rg
>> ia].
>> Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Il
>> faut
>> que si le résultat est NULL, la valeur retournée soit 0
(ma
>> requête est reprise
>> dans une autre et si j'ai un champ NULL, la ligne complète de
>> donnée de mon
>> autre requête est considérée comme NULL et est
donc
>> ignorée...)
>> J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doit
>> être mauvaise.
>>
>> SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
AS
>> Retours
>> FROM DECLARATIONS
>> WHERE (((DECLARATIONS.[Rg ia])>1))
>> GROUP BY DECLARATIONS.[Code Secteur];
>>
>> Cette requête ne me retourne pas de message d'erreur mais ne me
renvoie
>> pas non
>> plus les enregistrements NULL en 0. Ils restent NULL.
>>
>> Comment faire s'il vous plaît ?
>>
>> merci par avance.
>>
>> PS : j'ai essayé en remplaçant la fonction nz par la
fonction
>> Iif mais la
>> résultante est la même. Il n'y a pas d'erreur mais
ça ne
>> me retourne pas le
>> résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
>>
>>
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons
de lancer :) )
Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Argyronet a écrit le 03/02/2009 à 13h26 :
> Bonjour,
>
> Avant d'aller plus loin, que donne le colonne Retours avec cette
requête
> ?
> SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
> WHERE [Rg ia]>1
>
> --
> Argy
> http://argyronet.developpez.com/
> Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
> VBA pour Office 2007 (ISBN 2742983910)
>
>
>
> "yannickh" a écrit :
>
>> Bonjour,
>> J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rg
>> ia].
>> Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Il
>> faut
>> que si le résultat est NULL, la valeur retournée soit 0
(ma
>> requête est reprise
>> dans une autre et si j'ai un champ NULL, la ligne complète de
>> donnée de mon
>> autre requête est considérée comme NULL et est
donc
>> ignorée...)
>> J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doit
>> être mauvaise.
>>
>> SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
AS
>> Retours
>> FROM DECLARATIONS
>> WHERE (((DECLARATIONS.[Rg ia])>1))
>> GROUP BY DECLARATIONS.[Code Secteur];
>>
>> Cette requête ne me retourne pas de message d'erreur mais ne me
renvoie
>> pas non
>> plus les enregistrements NULL en 0. Ils restent NULL.
>>
>> Comment faire s'il vous plaît ?
>>
>> merci par avance.
>>
>> PS : j'ai essayé en remplaçant la fonction nz par la
fonction
>> Iif mais la
>> résultante est la même. Il n'y a pas d'erreur mais
ça ne
>> me retourne pas le
>> résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
>>
>>
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons
de lancer :) )
Argyronet a écrit le 03/02/2009 à 15h20 :Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Argyronet a écrit le 03/02/2009 à 13h26 :Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette
requête?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rgia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Ilfaut
que si le résultat est NULL, la valeur retournée soit 0
(marequête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est
doncignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doitêtre mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
ASRetours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me
renvoiepas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la
fonctionIif mais la
résultante est la même. Il n'y a pas d'erreur mais
ça neme retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons
de lancer :) )
Rebonjour,
Après avoir fait des essais, votre proposition me renvoie un résultat très
inattendu. J'ai peur de mal avoir présenté mon problème.
Actuellement j'obtiens avec ma requête:
Code Secteur CompteDeRg ia
101 49
107 3
Et je voudrais que ça me renvoie :
Code Secteur CompteDeRg ia
101 49
102 0
107 3
Merci d'avance.
Argyronet a écrit le 03/02/2009 à 15h20 :
Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :
Argyronet a écrit le 03/02/2009 à 13h26 :
Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette
requête
?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0
(ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est
donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me
renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la
fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais
ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons
de lancer :) )
Rebonjour,
Après avoir fait des essais, votre proposition me renvoie un résultat très
inattendu. J'ai peur de mal avoir présenté mon problème.
Actuellement j'obtiens avec ma requête:
Code Secteur CompteDeRg ia
101 49
107 3
Et je voudrais que ça me renvoie :
Code Secteur CompteDeRg ia
101 49
102 0
107 3
Merci d'avance.
Argyronet a écrit le 03/02/2009 à 15h20 :Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Argyronet a écrit le 03/02/2009 à 13h26 :Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette
requête?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rgia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Ilfaut
que si le résultat est NULL, la valeur retournée soit 0
(marequête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est
doncignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doitêtre mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
ASRetours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me
renvoiepas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la
fonctionIif mais la
résultante est la même. Il n'y a pas d'erreur mais
ça neme retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
cela me donne une série de secteur (101, 107, etc) avec les rg ia >1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous venons
de lancer :) )
Rebonjour,
Après avoir fait des essais, votre proposition me renvoie un résultat très
inattendu. J'ai peur de mal avoir présenté mon problème.
Actuellement j'obtiens avec ma requête:
Code Secteur CompteDeRg ia
101 49
107 3
Et je voudrais que ça me renvoie :
Code Secteur CompteDeRg ia
101 49
102 0
107 3
Merci d'avance.
Bonjour,
Pas sur d'avoir bien compris.
Ce que tu souhaites faire c'est dénombrer les occurences de tous les
secteurs 101, 102, ..., 107 pour lesquels les rg ia sont supérieurs
à 1
mais avoir aussi dans la requête les secteurs pour lesquels rg ia = 1 en
affectant 0 au dénombrement.
Sous réserve d'avoir compris:
SELECT DECLARATIONS.[Code Secteur],Count(DECLARATIONS.[Rg ia]) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur]
UNION
SELECT DECLARATIONS.[Code Secteur],0
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])=1));
yannickh a écrit :Argyronet a écrit le 03/02/2009 à 15h20 :Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Argyronet a écrit le 03/02/2009 à 13h26 :Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette
requête?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rgia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Ilfaut
que si le résultat est NULL, la valeur retournée soit 0
(marequête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est
doncignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doitêtre mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
ASRetours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me
renvoiepas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la
fonctionIif mais la
résultante est la même. Il n'y a pas d'erreur mais
ça neme retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
cela me donne une série de secteur (101, 107, etc) avec les rg ia
>1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous
venons
de lancer :) )
Rebonjour,
Après avoir fait des essais, votre proposition me renvoie un
résultat très
inattendu. J'ai peur de mal avoir présenté mon problème.
Actuellement j'obtiens avec ma requête:
Code Secteur CompteDeRg ia
101 49
107 3
Et je voudrais que ça me renvoie :
Code Secteur CompteDeRg ia
101 49
102 0
107 3
Merci d'avance.
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Pas sur d'avoir bien compris.
Ce que tu souhaites faire c'est dénombrer les occurences de tous les
secteurs 101, 102, ..., 107 pour lesquels les rg ia sont supérieurs
à 1
mais avoir aussi dans la requête les secteurs pour lesquels rg ia = 1 en
affectant 0 au dénombrement.
Sous réserve d'avoir compris:
SELECT DECLARATIONS.[Code Secteur],Count(DECLARATIONS.[Rg ia]) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur]
UNION
SELECT DECLARATIONS.[Code Secteur],0
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])=1));
yannickh a écrit :
Argyronet a écrit le 03/02/2009 à 15h20 :
Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :
Argyronet a écrit le 03/02/2009 à 13h26 :
Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette
requête
?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :
Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rg
ia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Il
faut
que si le résultat est NULL, la valeur retournée soit 0
(ma
requête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est
donc
ignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doit
être mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me
renvoie
pas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la
fonction
Iif mais la
résultante est la même. Il n'y a pas d'erreur mais
ça ne
me retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
cela me donne une série de secteur (101, 107, etc) avec les rg ia
>1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous
venons
de lancer :) )
Rebonjour,
Après avoir fait des essais, votre proposition me renvoie un
résultat très
inattendu. J'ai peur de mal avoir présenté mon problème.
Actuellement j'obtiens avec ma requête:
Code Secteur CompteDeRg ia
101 49
107 3
Et je voudrais que ça me renvoie :
Code Secteur CompteDeRg ia
101 49
102 0
107 3
Merci d'avance.
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Pas sur d'avoir bien compris.
Ce que tu souhaites faire c'est dénombrer les occurences de tous les
secteurs 101, 102, ..., 107 pour lesquels les rg ia sont supérieurs
à 1
mais avoir aussi dans la requête les secteurs pour lesquels rg ia = 1 en
affectant 0 au dénombrement.
Sous réserve d'avoir compris:
SELECT DECLARATIONS.[Code Secteur],Count(DECLARATIONS.[Rg ia]) AS
Retours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur]
UNION
SELECT DECLARATIONS.[Code Secteur],0
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])=1));
yannickh a écrit :Argyronet a écrit le 03/02/2009 à 15h20 :Eh bien vous pouvez écrire votre requêt ainsi :
SELECT Secteur, Count(IIf(IsNull([Rg ia]),0,[Rg ia])) AS Retours
FROM DECLARATIONS
GROUP BY Secteur
HAVING (((Count(IIf(IsNull([Rg ia]),0,[Rg ia])))>1));
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Argyronet a écrit le 03/02/2009 à 13h26 :Bonjour,
Avant d'aller plus loin, que donne le colonne Retours avec cette
requête?
SELECT Code Secteur, [Rg ia] AS Retours FROM DECLARATIONS
WHERE [Rg ia]>1
--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)
"yannickh" a écrit :Bonjour,
J'ai une table 'declarations' avec un champ [code secteur] et un
champ [rgia].
Je dois regrouper les [rg ia]>1 et calculer les occurences par
secteur. Ilfaut
que si le résultat est NULL, la valeur retournée soit 0
(marequête est reprise
dans une autre et si j'ai un champ NULL, la ligne complète de
donnée de mon
autre requête est considérée comme NULL et est
doncignorée...)
J'ai essayé d'utilisé la fonction Nz mais ma syntaxe
doitêtre mauvaise.
SELECT DECLARATIONS.[Code Secteur],nz(Count(DECLARATIONS.[Rg ia]),0)
ASRetours
FROM DECLARATIONS
WHERE (((DECLARATIONS.[Rg ia])>1))
GROUP BY DECLARATIONS.[Code Secteur];
Cette requête ne me retourne pas de message d'erreur mais ne me
renvoiepas non
plus les enregistrements NULL en 0. Ils restent NULL.
Comment faire s'il vous plaît ?
merci par avance.
PS : j'ai essayé en remplaçant la fonction nz par la
fonctionIif mais la
résultante est la même. Il n'y a pas d'erreur mais
ça neme retourne pas le
résultat attendu (les NULL restent NULL et ne sont pas
convertis en 0).
cela me donne une série de secteur (101, 107, etc) avec les rg ia
>1
(2 et 3),
de la forme suivante :
Code Secteur RG ia
101 2
101 2
101 3
101 3
107 2
107 3
107 2
etc
à noter que j'ai dans ma table des enregistrement Code Secteur 102
avec RG ia
= 1. (qui bien sûr ne sortent pas avec la requête que nous
venons
de lancer :) )
Rebonjour,
Après avoir fait des essais, votre proposition me renvoie un
résultat très
inattendu. J'ai peur de mal avoir présenté mon problème.
Actuellement j'obtiens avec ma requête:
Code Secteur CompteDeRg ia
101 49
107 3
Et je voudrais que ça me renvoie :
Code Secteur CompteDeRg ia
101 49
102 0
107 3
Merci d'avance.
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonsoir,
Essaies ceci :
SELECT DISTINCT T.[Code Secteur], clng(nz(Retour,0)) AS Retours
FROM DECLARATIONS AS T LEFT JOIN (SELECT [Code Secteur], Count([Rg ia])
AS Retour FROM DECLARATIONS WHERE [Rg ia]>1 GROUP BY [Code Secteur]) AS
T1 ON T.[Code Secteur]=T1.[Code Secteur];
Bonsoir,
Essaies ceci :
SELECT DISTINCT T.[Code Secteur], clng(nz(Retour,0)) AS Retours
FROM DECLARATIONS AS T LEFT JOIN (SELECT [Code Secteur], Count([Rg ia])
AS Retour FROM DECLARATIONS WHERE [Rg ia]>1 GROUP BY [Code Secteur]) AS
T1 ON T.[Code Secteur]=T1.[Code Secteur];
Bonsoir,
Essaies ceci :
SELECT DISTINCT T.[Code Secteur], clng(nz(Retour,0)) AS Retours
FROM DECLARATIONS AS T LEFT JOIN (SELECT [Code Secteur], Count([Rg ia])
AS Retour FROM DECLARATIONS WHERE [Rg ia]>1 GROUP BY [Code Secteur]) AS
T1 ON T.[Code Secteur]=T1.[Code Secteur];