SQL 将数据从 table 复制到另一个并计算值

SQL Copy data from table to another and count value

我现在卡住了。我正在为我们的体育俱乐部在 MS Access 中创建一个体育数据库,并且有以下问题...

所以我有: Tbl_Player(Player_ID,名字,姓氏,位置,Min_Played,进球,助攻,黄色,红色)

Tbl_Player_Match(FK Tbl_Player_Player_ID,Min_Played,进球,助攻,黄色,红色)。

我需要和挣扎的是以下内容。当我添加匹配并且数据保存在 tbl_Player_Match 中时,我需要将其保存在 "Summary" table 中,即 Tbl_Player。

我找不到正确的语法,我应该用统计信息创建另一个临时文件 table 吗?我应该在这里简单地添加一个 SQL 代码吗?

非常感谢您的帮助。

鲍勃

我会告诉你,你不应该在 tbl_Player 中存储求和值。只有球员的特征,例如姓名、位置等。 对于输出,您创建一个如下所示的查询:

Select p.Player_ID, p.Firsname, p.Lastname, p.position, SUM(pm.Min_Played) as Sum_Min_Played //, Count(pm.Tbl_Player_Match_ID) as Matches_Played From Tbl_Player p inner join Tbl_Player_Match pm on p.Player_ID = pm.Tbl_Player_Player_ID group by p.Player_ID, p.Firsname, p.Lastname, p.position

Matches_Played只是一个补充,如果你有……就像比赛的 ID Table。 告诉我是否对你有帮助。

我强烈建议只使用查询在 运行 时间提取总数:

SELECT  ID
        , Naam
        , Achtenaam
        , SUM(Goals) as Total
FROM    Speler LEFT JOIN SpelerStats ON Speler.ID = SpelerStats.Speler
GROUP BY ID
        , Naam
        , Achtenaam  

如果必须将其添加到 table,则必须使用 domain aggregate function

UPDATE  Speler
SET     Total = DSUM("Goals","SpelerStats","SpelerStats.Speler = " & Speler.ID)