Je suis en train de développer une petite procédure stockée sur SQL server 2008. J'ai peu de connaissances sur les requêtes SQL, mais assez pour réaliser des tâches simples. Cependant, j'ai trouvé un problème que je ne peux pas résoudre moi-même. Avant de commencer à expliquer mon problème, veuillez me pardonner si j'épelle une requête SQL erronée parce que je ne suis pas anglophone.Comment résumer un champ en fonction d'une autre valeur de champ?
J'ai 4 champs (représentation CSV):
ID, NAME, VALUES, ANSWER
25, Tom , 2400 , 0
25, Tom , 600 , 0
25, Tom , 500 , 1
25, Tom , 300 , 1
27, Jerry, 100, 0
27, Jerry, 20, 1
27, Jerry, 60, 1
27, Jerry, 2000, 0
Ce que je veux faire est un groupe par la sélection par ses ID
et NAME
, somme ses valeurs dans un champ nommé positive when ANSWER = 1
et negative when ANSWER = 0
.
ID, NAME, SUM, NEGATIVE, POSITIVE
25, Tom, 3000, 800
27, Jerry, 2100, 80
Je suppose que ma question a été posée à plusieurs reprises, mais je n'ai pas pu trouver quoi que ce soit à ce sujet, probablement parce que je suis en utilisant les termes erronés. De toute façon, si quelqu'un pouvait m'aider, cela me ferait gagner beaucoup de temps.
http://stackoverflow.com/questions/30563/sql-returning-the-sum-of-items-depending-on-which-type-it-is – JNK
+1, juste parce que c'est en fait un joli puits Question posée (Merci aussi à l'éditeur.) Il a des données d'entrée simples et illustratives et montre en fait le jeu de résultats souhaité. – Matt
Je suis d'accord avec Matt, c'est une question bien illustrée et l'objectif est clair comme de l'eau. Cela aide beaucoup pour les anglophones non-natifs. =) –