尝试将乘法值插入表

时间:2015-04-26 23:18:25

标签: sql sql-server sql-server-2012

我正在尝试创建一个表,其中值显示为来自两个单独表的乘积值。总共有五个表被使用。我创建了两个查询,为我提供了我想要的输出

SELECT Name = Person_Exercise.Name, Minutes_Exercised * Calories_Burned_Per_Minute AS 'Calories Burned', Date
FROM Person_Exercise
    JOIN Exercise ON Exercise.Exercise = Person_Exercise.Exercise

SELECT Person, SUM(Servings * Calories_Per_Unit) AS 'Total Calories', Date
FROM Person_Food
    JOIN Food ON Food.Name = Person_Food.Food
GROUP BY Person_Food.Person, Date

但是,当我尝试将所有这些放在一起时,正确的“总卡路里”就会消失,并且会增加相当多的数量。我知道这是错的,但我不确定是什么。

INSERT INTO Person_Calorie_Interaction (Name, Calories_Consumed,Calories_Burned, Net_Calories, Date)
SELECT Name = Person.Name, SUM(Servings * Calories_Per_Unit), SUM(Minutes_Exercised + Calories_Burned_Per_Minute), SUM(Servings * Calories_Per_Unit - Minutes_Exercised * Calories_Burned_Per_Minute), Date = Date.Date
FROM Person
    JOIN Person_Food ON Person_Food.Person = Person.Name
    JOIN Date ON Person_Food.Date = Date.Date
    JOIN Food ON Food.Name = Person_Food.Food
    JOIN Person_Exercise ON Person_Exercise.Name = Person.Name
    JOIN Exercise ON Exercise.Exercise = Person_Exercise.Exercise
GROUP BY Person.Name, Date.Date

0 个答案:

没有答案
相关问题