somme à travers une ligne de sql
Je veux faire la somme des valeurs de Punten1,Punten 2,Punten 3,Punten4 comme un total.
Mais je ne sais pas comment faire la somme des valeurs dans la colonne. Mais pas dans l'ensemble de la ligne.
Personne ne sait comment le faire.
SELECT Punten1, Punten2, Punten3, Punten4
Punten1 + Punten 2 + Punten3 + Punten4 as Puntentotaal
FROM puntentotaal
Donc je voudrais faire la somme des valeurs de Punten1,Punten 2,Punten 3,Punten4 dans une nouvelle colonne: puntentotaal
merci!
? Mais c'EST exactement la façon dont vous le faites!?!? Bien que ce type de requête est souvent révélatrice d'une mauvaise conception de table!
Comment le feriez-vous?
Désolé, faire quoi?
tout ce que vous devez changer dans votre sql ci-dessus est d'ajouter une virgule après le premier
votre question des titres comme "la somme à travers une rangée", mais ce que vous essayez d'atteindre est la somme de la colonne.
Comment le feriez-vous?
Désolé, faire quoi?
tout ce que vous devez changer dans votre sql ci-dessus est d'ajouter une virgule après le premier
Punten4
votre question des titres comme "la somme à travers une rangée", mais ce que vous essayez d'atteindre est la somme de la colonne.
OriginalL'auteur warnerst | 2013-01-28
Vous devez vous connecter pour publier un commentaire.
juste une virgule supplémentaire.
Je suis en supposant que votre table comme IDENTIFIANT unique comme une colonne.
Cela permettra de mettre à jour la somme de Punten1,Punten 2,Punten 3,Punten4 dans la colonne Puntentotaal dans toutes les lignes.
Mais maintenant, c'est un temporaire de la colonne. Mais de quoi ai-je besoin de changer si je veux une nouvelle colonne dans la table. Où les nouvelles valeurs seront séjour?
ajouter une colonne dans ta table. ALTER TABLE puntentotaal AJOUTER une COLONNE Punten5 ENTIER; Il est peu difficile de ce que vous voulez réaliser avec la nouvelle colonne.
Vous n'avez pas besoin d'une auto-jointure dans votre instruction de mise à JOUR.
UPDATE puntentotaal SET Puntentotaal = (Punten1 + Punten2 + Punten3 + Punten4)
devrait être juste assez.oui, pas besoin de jointure réflexive.
OriginalL'auteur Govil
Votre question des titres comme "la somme à travers une rangée", mais ce que vous essayez d'atteindre est la somme de la colonne.
Si vous êtes à la recherche pour "somme de la ligne" il y a une fonction appelée SOMME(field_name) qui vous donnera la somme de domaine spécifique pour toutes les lignes sont sélectionnées, vous pouvez utiliser cette fonction avec le GROUPE PAR
Si vous êtes à la recherche pour "somme de la colonne" vous êtes en train de faire avec le signe+, juste besoin d'ajouter une virgule par @paul a proposé.
OriginalL'auteur Minesh