我正在寻找与另一个表根据现场条件更新我的一个表。我想知道正确的做法是什么。我试图做的2个表UPDATE语句,但每次它与此错误就出来了:参数太少,预计2与另一个表的SQL Access VBA UPDATE表?太少参数
我的目标: 如果SOURCING场= O,我想邮编是原始邮政编码 如果SOURCING字段= D,我希望邮政编码为Dest邮政编码
因此,现在,我只是在做一个条件为LEFT JOIN。这是做这件事的最好方法吗?或者我应该用原始的INSERT语句做到这一点?
CurrentDb.Execute "UPDATE Processing" & _
" LEFT JOIN tblImport" & _
" ON Processing.[BATCH_NO] = tblImport.[BATCH_NO]" & _
" SET Processing.[Zip Code] = tblImport.[Origin Postal Code]" & _
" WHERE tblImport.[Sourcing] = O;"
CurrentDb.Execute "UPDATE Processing" & _
" LEFT JOIN tblImport" & _
" ON Processing.[BATCH_NO] = tblImport.[BATCH_NO]" & _
" SET Processing.[Zip Code] = tblImport.[Dest Postal Code]" & _
" WHERE tblImport.[Sourcing] = D;"
我曾试图改变WHERE语句,因为我不知道是否应该加引号,单引号,不报价,等...但我想出空在那里。其他一切对我来说都是正确的。
你确定你应该使用JOIN表吗?看起来您可以使用子查询从tblImport获取所需的数据,因为您没有在该表中设置任何值。 – ZeroK
不要'O'和'D'需要围绕他们单引号BC他们是字符串字段?这可能是两个“参数”之一。 –