基于两个标准更新表sql

时间:2016-07-15 19:39:42

标签: sql

好的所以我在这上面看了几篇帖子,但由于某种原因,我的代码没有用表B中的LastTrnID信息更新表A中的TrnID字段,我们将非常感谢任何帮助。如果我将内部联接仅基于一个字段,则更新可以正常工作,但是我知道可以这样做,以便您在两个字段上进行内部联接,但我只能假设我没有正确执行。基本上,表A和表B是在查询开始时动态创建的,然后我必须将两个集合放入一个表中。最终表应该包括人,然后每个人每天进行第一次和最后一次交易,这就是我在CrdID和LastTrnDate上进行内部联接的原因。这是该字段的日期部分。

{{1}}

2 个答案:

答案 0 :(得分:1)

您的查询看起来没问题(除了#Table_A上的额外#)

因此可能是数据错误。首先检查您的查询是否带来结果

试试这个1,查看您想要更新的字段和新值是否正确。

SELECT

答案 1 :(得分:0)

  UPDATE f1
  SET f1.TrnID = f2.LastTrnID       
  FROM Table_A f1 INNER JOIN Table_B f2 
    ON (f1.CrdID = f2.CardholderID) AND (f1.TrnD = f2.LastTrnDate)