Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Valeur négative dans mon SQL

6 réponses
Avatar
Ayrton [ASC]
Bonjour à tous,

Voilà, j'ai un sql tout bête qui me pose un problème ; le voici:
SELECT Sum(TblClients.Société) AS SommeDeSociété
FROM TblClients
HAVING (((Sum(TblClients.Société))=True));

Le résultat m'affiche : -265 ;-( ; e ncomptant manuellement j'ai bien
265 sociétés dans ma base mais pourquoi le résultat est -265 et non 265
? je pense qu'il doit sagir d'un format de champ ou d'une mauvaise
syntaxe sql mais là, je sèche ; j'ia essayé totu ce que je savais ( ou
plutôt le peu que je savais ;-) ) et je ne trouve pas la solution.
Merci pour votre aide.

De plus, si je veux connaître le pourcentage de sociétés par rapport au
nombre total de clients, puis je le faire en une seule requête ou pas ?
Je précise que le champ {Societe] est un champ " Vrai/Faux " ; on coche
si c'est une société et on ne coche pas si c'est un particulier.

Un très grand merci d'avance à vous pour votre et/ou vos conseils

Cordialement

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm

6 réponses

Avatar
Eric
Bonjour,

Une variable booleenne (Vrai/Faux) renvoie -1 si Vrai, 0 si Faux. Donc
dans ton sql mets :
SELECT -Sum(TblClients.Société) AS SommeDeSociété
ou
SELECT Abs(Sum(TblClients.Société)) AS SommeDeSociété

Pour avoir le % :
SELECT Abs(Sum(TblClients.Société))/count(TblClients.Société) as
PourcentageSociete From tblClients devrait faire l'affaire

Remarque: le 0 etant le neutre pour une somme, je pense que tu peux te
dispenser de la clause Having

Bonjour à tous,

Voilà, j'ai un sql tout bête qui me pose un problème ; le voici:
SELECT Sum(TblClients.Société) AS SommeDeSociété
FROM TblClients
HAVING (((Sum(TblClients.Société))=True));

Le résultat m'affiche : -265 ;-( ; e ncomptant manuellement j'ai bien
265 sociétés dans ma base mais pourquoi le résultat est -265 et non 265
? je pense qu'il doit sagir d'un format de champ ou d'une mauvaise
syntaxe sql mais là, je sèche ; j'ia essayé totu ce que je savais ( ou
plutôt le peu que je savais ;-) ) et je ne trouve pas la solution.
Merci pour votre aide.

De plus, si je veux connaître le pourcentage de sociétés par rapport au
nombre total de clients, puis je le faire en une seule requête ou pas ?
Je précise que le champ {Societe] est un champ " Vrai/Faux " ; on coche
si c'est une société et on ne coche pas si c'est un particulier.

Un très grand merci d'avance à vous pour votre et/ou vos conseils

Cordialement



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Ayrton [ASC]
Bonjour *Eric*
Dans ton message de
tu nous envoyais cette missive :-(*)
Bonjour,


Bonjour Eric,

Une variable booleenne (Vrai/Faux) renvoie -1 si Vrai, 0 si Faux. Donc
dans ton sql mets :
SELECT -Sum(TblClients.Société) AS SommeDeSociété
ou
SELECT Abs(Sum(TblClients.Société)) AS SommeDeSociété


Eh bien que j'essaie l'une ou l'autre ça me plante Access ;-( J'ai le
beau message " Access a rencontré une erreur et doit fermer......."
A vrai dire je ne sais pas pourquoi ; j'ai même essayé en
copiant/collant directement ton sql et c'est pareil....
Pour avoir le % :

SELECT Abs(Sum(TblClients.Société))/count(TblClients.Société) as
PourcentageSociete From tblClients devrait faire l'affaire


Par contre ça, ça fonctionne ;-) Il y a juste une chose c'est que quand
je click dans le résultat, je meretrouve avec au moins 15 chiffres ! !
J'ai pourtant mis Pourcentage dans le format mais bon......
Sinon, ça fonctionne !

Remarque: le 0 etant le neutre pour une somme, je pense que tu peux te
dispenser de la clause Having


Ok , j'en prends bonne note

Merci Eric

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm

Avatar
Ayrton [ASC]
Re Eric,

C'est tout bon ! ! ! Ne me demande pas pourquoi mais maintenant c'est ok
;-)
Peut être une mauvaise manip de ma part e nvoulant aller trop vite ! !

Par contre, pour le pourcentage, j'ai toujours le même souci si je click
dans le champ de la requête, à savoir que je meretrouve avec 18 ou 18
chiffres.......
Sinon, c'est ok pour tout.

Un grand merci

Bonne soirée

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
Avatar
Eric
re,

Pour l'histoire du signe, je n'avais pas mis From tblClients car je
pensais que tu le ferais toi-même.

Pour le nb de décimales, essaies :
Format(Abs(Sum(TblClients.Société))/count(TblClients.Société),
"Percent") mais dans ce cas là le résultat sera du texte

Re Eric,

C'est tout bon ! ! ! Ne me demande pas pourquoi mais maintenant c'est ok
;-)
Peut être une mauvaise manip de ma part e nvoulant aller trop vite ! !

Par contre, pour le pourcentage, j'ai toujours le même souci si je click
dans le champ de la requête, à savoir que je meretrouve avec 18 ou 18
chiffres.......
Sinon, c'est ok pour tout.

Un grand merci

Bonne soirée



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Ayrton [ASC]
Bonjour *Eric*
Dans ton message de newssO7qq5%
tu nous envoyais cette missive :-(*)
re,


Re Eric,

Pour l'histoire du signe, je n'avais pas mis From tblClients car je
pensais que tu le ferais toi-même.


Effectivement, c'était à moi à le faire : mais comme je te l'ai dit,
dans la précipitation, je n'ai même pas vu au début qu'il n' y avait pas
le " From " ; j'ai honte ;-(

Pour le nb de décimales, essaies :
Format(Abs(Sum(TblClients.Société))/count(TblClients.Société),
"Percent") mais dans ce cas là le résultat sera du texte


Ca ne m'avance pas plus mais ça ne fait rien ; ta solution précédente me
va très bien ! De plus, j'ai déjà eu le cas il y a un moment du click
qui te donne au moins quinze chiffres et je ne me rappelle plus comment
j'avais fait à ce moment là pour m'en sortir ; en cherchant bien, je
devrais retrouver ! ;-)

Encore merci pour ton aide

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm

Avatar
Ayrton [ASC]
Re Eric ;-)

Pour finir, voilà avec quoi j'arrive à " bloquer " le champ du résultat
de ma requête :
SELECT
(Format(Abs(Sum([TblClients].[Société]))*100/Count([TblClients].[Société]),"#.00%"))
AS PourcentageSociete
FROM tblClients;

Dans ce cas, je peux cliquer dans mon champ " PourcentageSocieté " sans
me retrouver avec + de 15 chiffres.....;-)

Encore merci

Bonne nuit

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm