sql update INNER JOIN 中关键字 'INNER' 附近的语法不正确

Incorrect syntax near the keyword 'INNER' in sql update INNER JOIN

我试图通过连接两个表来更新一些记录。但它给了我一些语法错误。

请帮我解决这个问题。

UPDATE [GCPurchaseInstalment]
INNER JOIN @Temptable 
ON GCPurchaseInstalment.StripeInvoiceId = @Temptable.InID 
SET GCPurchaseInstalment.AmountReceived = @AMOUNT_RECEIVED,
GCPurchaseInstalment.PaymentFee = @PAYMENT_FEE,
GCPurchaseInstalment.ReceivedDate = @Temptable.paidDate,
GCPurchaseInstalment.StripeInvoiceId = @Temptable.InID,
GCPurchaseInstalment.IsActive = 0 
WHERE GCPurchaseInstalment.GCPurchaseInstalmentId  = @GCPurchaseInstalmentId
AND @Temptable.id = @RowCount

SQL 服务器中的正确语法使用 FROM:

UPDATE pi
    SET pi.AmountReceived = @AMOUNT_RECEIVED,
        pi.PaymentFee = @PAYMENT_FEE,
        pi.ReceivedDate = t.paidDate,
        pi.StripeInvoiceId = t.InID,
        pi.IsActive = 0 
    FROM [GCPurchaseInstalment] pi JOIN
          @Temptable t
          ON pi.StripeInvoiceId = t.InID 
    WHERE pi.GCPurchaseInstalmentId = @GCPurchaseInstalmentId AND
          t.id = @RowCount;

请注意,我还引入了 table 别名,因此查询更易于编写和阅读。