comment faire une somme directement dans la BDD mysql ?

comment faire une somme directement dans la BDD mysql ? - PHP - Programmation

Marsh Posté le 17-05-2003 à 18:29:14    

Salut,
 
j'ai dans une base de données plusieurs colonnes de nombres, et je souhaiterai avoir dans la dernière colonne de ma bdd, la somme de tous les nombres des autres colonnes de la même ligne ...
 
est-il possible d'avoir cela directement dans phpmyadmin, en paramettrant les colonnes comme il faut ?
 
merci
 
jibet

Reply

Marsh Posté le 17-05-2003 à 18:29:14   

Reply

Marsh Posté le 17-05-2003 à 18:40:07    

euh
select a,b,a+b as c from t;
:??:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 17-05-2003 à 18:51:38    

bah, oui ... ça a l'air évident apparemment, mais pour moi, j'ai besoin d'un peu plus détail là !
ne serait-ce que le type à déclarer pourla colonne(int, varchar ... ??) et ensuite tout le cheminement à suivre pour arriver à écrire ta ligne au bon endroit ... tu vois un peu où j'en suis comme ça !!

Reply

Marsh Posté le 17-05-2003 à 18:54:10    

ben pourquoi veux-tu STOCKER la somme?
tu l'affiches quand tu fais une requete sur cette table, c'est tout.
 
pour un exemple, tu vas dans phpmyadmin, tu cliques sur "sql", et tu tapes ce que je t'ai mis en remplaçant "a" et "b" par les noms des colonnes que tu veux additionner et "t" par le nom de la table.
si ça marche pas essaie comme ça  
SELECT a,b,sum(a,b) FROM t
 


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 17-05-2003 à 19:05:24    

je veux la stocker parce-que je veux pouvoir classer les lignes en fonction du nb de point total ...
 
sinon, ce que tu me dis d'écrire, c'est à écrire dans la page en php, pas dans la bdd ?

Reply

Marsh Posté le 17-05-2003 à 19:06:55    

oui c'est une *Requete sql*
mais tu peux la tester dans phpmyadmin pour voir si c'est ce que tu veux
 
et tu peux tres bien trier les resultats de ta requetes en fonction de ça
select a,b from t order by sum(a,b)
par exemple


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 17-05-2003 à 19:41:26    

bon ben j'arrive pô :
 
je suis dans phpadmin, j'ai ma colonne "total" qui est configurée en TEXT, pour chaque ligne, je mets "SUM" dans la colonne fonction, et je mets a,b, ou (a,b) ou ... (je remplace a et b par les noms de colonnes quand même hein !) et cela ne veut pas me donner ma somme dans ma dernière colonne. Et je m'obstine à vouloir stocker ce résultat !!

Reply

Marsh Posté le 17-05-2003 à 19:57:39    

Dans ca cas, c'est plutot une requete de mise à jour
UPDATE table SET total = a+b;
 
Et tu enregistres la somme dans la colonne total au moment de l'ajout de lignes.
 
Mais je vois pas l'intérêt, ca pose pas de problème de faire la somme au moment du SELECT :??:

Reply

Marsh Posté le 17-05-2003 à 22:01:08    

mrBebert a écrit :

Dans ca cas, c'est plutot une requete de mise à jour
UPDATE table SET total = a+b;
 
Et tu enregistres la somme dans la colonne total au moment de l'ajout de lignes.
 
Mais je vois pas l'intérêt, ca pose pas de problème de faire la somme au moment du SELECT :??:  


 
hummm ...
 
conversion de type nan ? t'as une colonne text dans laquelle tu veux foutre un select sum() (...);
 
un select sum ça retournerait pas un entier ou un double ?

Reply

Marsh Posté le 17-05-2003 à 22:04:52    

paranoidandroid a écrit :

hummm ...
 
conversion de type nan ? t'as une colonne text dans laquelle tu veux foutre un select sum() (...);
 
un select sum ça retournerait pas un entier ou un double ?

On a pas idée aussi de stocker un entier dans une colonne text :o  :pt1cable:  
 
Du char ou varchar, encore, j'aurais pu comprendre, mais pas du text :cry:  :cry:

Reply

Marsh Posté le 17-05-2003 à 22:04:52   

Reply

Marsh Posté le 18-05-2003 à 00:20:37    

mrBebert a écrit :


Mais je vois pas l'intérêt, ca pose pas de problème de faire la somme au moment du SELECT :??:  

je crois qu'il a pas compris en fait :sweat:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-05-2003 à 00:23:11    

bien, je suis enfin parvenu à mes fins, ave cun SELECT dans la page et non dans la bdd.
autre (petit) pb : je souhaite classer ma base par la colonne "total". je le fais, et je veux afficher toutes les lignes classées de la sorte. Et ben avec les qq lgnes suivantes, j'ai ce que je veux, sauf que je n'ai jamais la 1ere ligne de a base :
 
$requete = "SELECT nom,a,b,a+b as total FROM table order by total desc";
 
$result = mysql_query($requete);
$article = mysql_fetch_object($result);
 
while ($article = mysql_fetch_object($result))
            {
                   echo $article -> nom;
                }
 
qu'est-ce qu'il manque pour qu'il m'affiche la 1ere ligne ??

Reply

Marsh Posté le 18-05-2003 à 00:26:52    

c'est plutot "qu'est-ce que j'ai mal recopié parce que j'ai pas compris..."
 
$requete = "SELECT nom,a,b,a+b as total FROM table order by total desc";
 
$result = mysql_query($requete);
 
while ($article = mysql_fetch_object($result)) {
   echo $article -> nom;
}  
 
devrait mieux marcher


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-05-2003 à 00:36:05    

eh oh, ça va les sarcasmes !! effectivement, j'ai mal recopié, mais j'ai pas de formation en php moi, je suis pas vraiment dans la prog à la base, c'est pour ça que j'ai un peu de mal sur des conneries ...
 
Et effectivement, cela marche mieux ainsi !
 
MErci bcp !!

Reply

Marsh Posté le 18-05-2003 à 00:36:57    

jibet a écrit :

eh oh, ça va les sarcasmes !! effectivement, j'ai mal recopié, mais j'ai pas de formation en php moi, je suis pas vraiment dans la prog à la base, c'est pour ça que j'ai un peu de mal sur des conneries ...
 
Et effectivement, cela marche mieux ainsi !
 
MErci bcp !!

tu crois que j'ai une formation en PHP et que je suis dans la prog à la base ? :D

Reply

Marsh Posté le 18-05-2003 à 00:37:20    

fo un début à tout [:spamafote]
mais essaie de comprendre ce que fais chaque instruction, ça aide ;)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-05-2003 à 00:37:35    

joce a écrit :

tu crois que j'ai une formation en PHP et que je suis dans la prog à la base ? :D

non et on voit le résultat [:joce]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-05-2003 à 00:44:24    

the real moins moins a écrit :

non et on voit le résultat [:joce]

:fuck:

Reply

Marsh Posté le 18-05-2003 à 00:47:57    

t'as vu ma signature? :whistle:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-05-2003 à 00:54:14    

the real moins moins a écrit :

t'as vu ma signature? :whistle:

oui, moi ca me dérange pas :o

Reply

Marsh Posté le 18-05-2003 à 00:57:31    

joce a écrit :

oui, moi ca me dérange pas :o

utilise un vrai browser alors :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed