Je te remercie de ta réponse, mais l'erreur était due à une mauvaise
prise en charge de ma requête, il fallait que je groupe (fonction) ma
colonne de nom et sa marche.
Désolée du dérangement
Cordialement
michel
mbini a écrit :
Bonjour
j'ai un souci avec une requête : SELECT "nom prenom beneficiare",
SUM( "duree annulé ( minutes)" ), SUM( "duree modifie ( minutes)" )
FROM "Table1" AS "Table1".
j'extrais de ma table une colone qui contient des chiffres (60, 30,
120, 45...) et je lui demande de faire la somme.
Il me génère une erreur.
Quelqu'un a une idée ?
Merci
Michel
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
Bonjour,
En premier lieu, est-ce que tu t'es assuré d'être bien en mode SQL
Direct (parce que certaines instructions passent en SQL Direct mais ne
passent pas en SQL "pas direct") ?
Sans être non plus un professionnel du SQL, je m'interroge sur la tête
de ta requête ; as-tu volontairement simplifié ta rédaction pour le
message ou as-tu recopié littéralement (en modifiant éventuellement
les noms des tables ou des colonnes) ta requête ?
Est-ce que tu as véritablement une colonne qui s'appelle "nom prenom
beneficiare" ? Ou est-ce que tu as, dans ta table une colonne "nom",
une colonne "prenom" et une colonne "beneficiare" (d'ailleurs ce ne
serait pas plutôt "beneficaire" le nom exact de ta colonne ?) ?
Dans la première hypothèse, tu pourrais essayer de voir si la
transformation de "beneficiare" en "beneficiaire" ne serait pas
bénéfique (sachant que ça ne devrait pas tout résoudre mais peut-être
auras-tu une erreur différente ?).
Si, en revanche, c'est la deuxième hypothèse qui est valable, le début
du Select devrait s'écrire ainsi : SELECT "nom", "prenom",
"beneficiaire".
Ensuite, je suis étonné par le contenu de tes instructions SUM et je
pense qu'il pourrait être judicieux que tu en dises plus sur la
structure de ta table (nom exact des colonnes en particulier) ; mais
même si tu dispose, dans ta table, de colonnes intitulées "duree
annulé ( minutes)" et "duree modifie ( minutes)" (d'ailleurs, pourquoi
un accent à "annulé" et pas à "modifie", n'est-ce pas une erreur ?)
quelle somme veux-tu que ta requête effectue ? Ta requête n'a de sens
que si la valeur de "nom prenom beneficiare" n'est pas unique
(autrement dit, si tu as plusieurs enregsitrements pour un même
bénéficiaire), donc plusieurs valeurs à totaliser pour un même "nom
prenom beneficiare" ; il faut alors donner à ta requête une indication
sur le nom de la colonne sur laquelle le regroupement va devoir
s'opérer, ceci au moyen d'une clause "GROUP BY" ; ainsi si tu veux
connaître, pour chaque bénéficiaire, le total de minutes modifiées et
le toal de minutes annulées tu indiqueras en fin de requête : GROUP BY
"nom prenom beneficiare" ; reste également que, pour donner un
résultat, chaque colonne affectée d'un SUM doit être dotée d'un alias,
au moyen de la clause AS ; ainsi cette partie de ta requête devrait
s'écrire :
SUM( "duree annulé ( minutes)" ) AS "duree annulé" , SUM( "duree
modifie ( minutes)" ) AS "duree modifie"
Enfin, je m'interroge sur cette instruction : FROM "Table1" AS
"Table1" ; je pense déjà qu'à elle seule, cette partie de ta requête
te génère une erreur ; qui plus est, je ne vois pas quel est le but
poursuivi par ce [AS "Table 1"] qui revient à donner pour Alias à une
table, son propre nom... ; c'est comme si tu disais "Permettez-moi de
vous présenter Jean-Paul DUPONT plus connu sous le nom de Jean-Paul
DUPONT" ; alors une explication sur ce point pourrait être intéressante.
Donc là, sous réserve qu'il n'y ait pas de fautes de frappes dans ta
requête et que tes noms de colonnes soient exactement ceux mentionnés
dans ton message, je proposerais la rédaction suivante :
SELECT "nom prenom beneficiare", SUM( "duree annulé ( minutes)" ) AS
"duree 1", SUM( "duree modifie ( minutes)" ) AS "duree 2" FROM
"Table1" GROUP BY "nom prenom beneficiare";
Espérant avoir aidé,
A+
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]