【发布时间】:2019-12-17 16:34:20
【问题描述】:
我正在尝试通过比较(即更改的值)来更新引用新表的旧表。
我的查询如下:
UPDATE CogencyData.AUM
SET BeginBalanceBase = T1.BeginBalanceBase
FROM Cogency_Temp.AUM T1
LEFT OUTER JOIN CogencyData.AUM T2
ON T1.FundLongName = T2.FundLongName
AND T1.PeriodDate = T2.PeriodDate
WHERE COALESCE(T1.BeginBalanceBase, 0) <> COALESCE(T2.BeginBalanceBase);
但我收到以下错误:
UPDATE/MERGE must match at most one source row for each target row
我相信代码在 MySQL 中运行良好。我该如何解决这个问题?
【问题讨论】:
-
注释掉前两行 (
UPDATE/SET) 并替换为SELECT T1.BeginBalanceBase as T1BBB, T2.BeginBalanceBase as T2BBB。有结果吗? -
@rtenha 是的。结果我得到了两个值 - 也许这就是查询被混淆的原因?如何有效地更新这两个值?
标签: google-bigquery