我正在尝试使用更新查询来更新字符串的前3个字符。但我收到语法错误
我的查询是
update table1, table 2 set left(table1.stringfield, 3) = table2.stringfield
thankstksy
答案 0 :(得分:4)
好的,有几件事
首先,你的set语句看起来应该是这样的
set table1.stringfield = Left(table2.stringfield, 3) _
+ mid$(table1.stringfield, 4)
这将获取table2.stringfield中的前3个字符,以及table1.stringfield中4个以后的字符。
如果table1.stringfield的长度少于4个字符,这会遇到问题,你可能会想要像
这样的东西set table1.stringfield = Left(table2.stringfield, 3) +
iif(len(table1.stringfield) > 3, mid$(table1.stringfield, 4), "")
其次,你需要将两个表连接在一起,我目前还没有MSAccess方便,最简单的方法就是将设备直接更新查询,然后再查看SQL查看该查询。
希望这会有所帮助:)