我的理解是以下SQL是:
(1)从tbl1获取数据并更新tbl2
(2)两者都添加新记录并更新旧记录。
(3)覆盖tbl2中的现有数据
(4)不用空白单元格覆盖tbl2中的数据
我是否在这个问题上脱颖而出,如果是这样的话?
var input= "4250.00";
var output = (original / 100).toFixed(2); // => "42.50"
EDIT1
因此,要满足条件2和4并让用户轻松保持:
(2)使用APPEND查询添加新的数据行,UPDATE只会更改现有的行。
(4)使用更新查询,如何阻止它覆盖包含空白单元格的现有行中的数据?
我让用户实时现场更新表格,并担心远程用户在连接后更新表格会用一堆空白单元格覆盖现场用户数据。
这样的事情会满足条件4吗?
UPDATE tbl1
INNER JOIN tbl2
ON tbl1.thing0 = tbl2.thing0
SET tbl2.[thing1] = tbl1.[thing1], tbl2.[thing2] = tbl1.[thing2], tbl2.[thing3] = tbl1.[thing3];
(5)然后将宏附加到命令按钮,以便用户可以同时运行两个查询。
答案 0 :(得分:2)
OP编辑后,Re#4:
你可以在SET行上使用Iif(),就像下一个(也许你应该添加Trim()或检查NULL值或类似):
SET tbl2.[thing1] = Iif(tbl1.[thing1] = '', tbl2.[thing1], tbl1.[thing1])
Iif()是MS Access功能;在适当的SQL中,你必须使用Case语句。