Bonjour, j'ai bien été aidé par vos aides mais je voudrais savoir si je peux a partir de ma requête sql faire la somme totale pendant une période donnée voila toujours la requête que j'effectuais pour calculer la somme par période : $sql="SELECT id,poste,montant,SUM(montant) as SOMME_MONTANT,date FROM newrech GROUP BY date";
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 29 janv. 2014 à 13:32
Tanon...
pour la dernière fois....
LORSQUE TU POSTES DU CODE....UTILISE LES BALISES DE CODE !!!!!
SELECT id,poste,montant,SUM(montant) as SOMME_MONTANT,date FROM newrech GROUP BY date
je voudrais savoir si je peux a partir de ma requête sql faire la somme totale pendant une période donnée
Somme totale de quoi ?
Période de quel type ? Entre deux dates que tu lui passerais en paramètres ?
As tu essayé d'ajouter une clause WHERE à ta requête ?
Si oui..laquelle ? date => '2014-01-01' AND date <= '2014-01-29' par exemple ? ou sinon à l'aide d'un BETWEEN ?
Ton champ date est un DATETIME ou TIMESTAMP ?
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 29 janv. 2014 à 13:43
Si tu souhaites faire la somme totale de ton champ MONTANT entre deux dates
tu peux utiliser la syntaxe suivante :
SELECT SUM(montant) as TOTAL_MONTANT
FROM newrech
Where date => '2014-01-01' and date <= '2014-01-29' table
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 29 janv. 2014 à 18:02
Déjà..il te manque une virgule avant le SUM dans la requête que tu nous montres.
Ensuite... Est-ce que tu veux la somme de TOUS les montants de ta table (entre deux dates) ou bien la somme des montants de chaque poste (entre deux dates) ?
Cas Numéro 1 :
$sql="select SUM(montant) as TOTAL_MONTANT
FROM newrech
WHERE date BETWEEN '$date1' AND '$date2' ";
Cas Numéro 2 :
$sql="select id,poste,montant, SUM(montant) as TOTAL_MONTANT
FROM newrech
WHERE date BETWEEN '$date1' AND '$date2'
GROUP BY poste";
Si tu n'obtiens toujours pas ce que tu cherches... merci de mettre un ECHO de ton $sql PUIS de nous montrer ce que ça donne.
merci jordane45 j'ai bien exécuté la requete et elle marche a merveille mais je peux savoir un truc ???
es ce qu'il est possible de faire uniquement la somme des montants totale
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 30 janv. 2014 à 12:44
la somme des montants total... c'est à dire ?
Tu as testé les deux cas proposés ??
ou alors..peux tu nous dire exactement ce que tu souhaites obtenir... par exemple : la Somme des montants / Par Date / Entre deux dates
bon je t'explique au fait j'ai utilisé le cas numéro 2 comme tu me l'avais proposé et je voudrais encore faire une autre requête qui me permettra d'effectuer la somme totale uniquement des montants . j'espère que tu me comprends
si tu veux voila lorsque j'ai le montant totale au cours d'une date je souhaite qu'il me donne la somme totale des montants sans la date mais qu'il puisses me donner uniquement les totaux .
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 30 janv. 2014 à 13:13
Cas Numéro 2.
Requête ne contenant QUE le montant TOTAL.
=)> Tu choisis dans ton "select" ce que tu veux comme champs...
Si tu ne veux que la somme des montant.. tu ne marque que ça...
$sql="SELECT SUM(montant) as TOTAL_MONTANT
FROM newrech
WHERE date BETWEEN '$date1' AND '$date2'
GROUP BY poste";
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 30 janv. 2014 à 13:15
A mois que tu ne veuille la somme totale de tous les montants ?
Ben dans ce cas... tu te retrouves avec le CAS N°1 ...
où est le souci ??
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 30 janv. 2014 à 13:24
Tes questions concernent le requêtage de ta BDD ... donc du SQL....
Je pense que tu as un souci pour comprendre comment cela fonctionne..
Pour faire simple .. lorsque tu veux faire une requête.. tu dois répondre aux questions suivantes :
Je veux [ liste des choses que tu vas mettre dans la partie SELECT ..... ]
Qui se trouve dans la/les table(s) [ ça c'est le FROM ..]
Qui correspond aux conditions... [ Ca.. c'est dans le WHERE ]
La syntaxe d'une requête SQL est toujours construite de la même manière..
SELECT champ1,champ2...
FROM maTable1,maTable2...
WHERE [optionnel] MaCondition1 AND/OR Macondition2...
Le where n'est pas obligatoire.. par exemple si tu veux TOUS les enregistrement de ta table..tu n'as pas besoin de lui donner de conditions.
FROM : Tu peux mettre une ou plusieurs tables... utiliser des sous-select..utiliser des jointures.... a voir selon tes besoins.
SELECT : Tu y mets donc tous ce que tu veux obtenir comme champs.. ou comme champs "calculés" ( SUM, COUNT ...)
Voila.. Tu as toutes les billes pour t'en sortir je pense.
MERCI , pour ces différents liens et je voudrais te dire que j'ai pu trouver une solution a mon problème .
jordane45
Messages postés37727Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 septembre 2023342 31 janv. 2014 à 13:13
Je t'en prie.
Par contre... quelle est cette solution ?
(merci de nous l'indiquer ici... afin que si d'autres personnes rencontrent le même souci que toi..elles puissent trouver une réponse facilement)
non au fait ce code représente le code permettant de faire l'aperçu de ma page . mais ce code lorsque je veux l'intégrer a un autre code il ne me met que les images retour et l'imprimante mais il n'affiche pas le contenu de mon aperçu . hors je l'ai bien intergrer mais je ne sais pas ce qu'il ne vas pas .
29 janv. 2014 à 13:43
tu peux utiliser la syntaxe suivante :
29 janv. 2014 à 14:35