如何简化sql语句中相同的运算操作
请教, 如下的语句, 有没有办法简化2次计算操作, 如(Val2+Val3)变为1次,在access2000中
UPDATE Table1 SET Val1=(Val2+Val3) WHERE Val1 <> (Val2+Val3)
这样写是因为要取得修改后的改动的记录数
------解决方案--------------------UPDATE (SELECT Val1, (Val2+Val3) AS Val4 FROM Table1) SET Val1=Val4 WHERE Val1 <> Val4
在ACCESS2000中没有问题,只不过效率低,
我想知道access能否在sql语句中建立临时变量,因为我以前接触过一种sql大概可以像下面这样
UPDATE Table1 SET Val1=Val4 USING (Val2+Val3) AS Val4 WHERE Val1 <> Val4
JET SQL不支持这种写法
------解决方案--------------------用子查询确实可以。
但是Access不支持用using 的方式:UPDATE Table1 SET Val1=Val4 USING (Val2+Val3) AS Val4 WHERE Val1 <> Val4