首页 > 解决方案 > 尝试更新 SQL 字段时出错

问题描述

大家好我有以下 MSSQL 更新查询

UPDATE Campaign **c**
**INNER JOIN** (
    SELECT CampaignID, sum(Amount) as total
    FROM Donation
    GROUP BY CampaignID
) t ON c.CampaignID = t.CampaignID
SET c.AmountDonated = t.total

看起来它应该可以正常工作,但是我在活动表 (c) 的后缀上出现错误,然后在 INNER JOIN 中的 INNER 出现错误,但我不明白为什么。谁能指出我正确的方向?

标签: sqlsql-server

解决方案


请尝试以下查询:

UPDATE c
SET c.AmountDonated = t.total
FROM Campaign c
INNER JOIN (
    SELECT CampaignID, sum(Amount) as total
    FROM Donation
    GROUP BY CampaignID
) t ON c.CampaignID = t.CampaignID

在查询结束时使用FROM和。JOINS


推荐阅读