日期:2014-05-19  浏览次数:20374 次

为何我这句SQL总是报语法错误?我找不出错在哪里?请帮忙看看,谢谢大家
string   strUpdate= "update   表一   set   表一字段A=(select   sum(表二字段A)   form   表二   where   id= "+id+ ")   where   id= ' "+id+ " '   ";

语法错误。   在查询表达式   '(select   sum(表二字段A)   form   表二   where   id=6244868) '   中。

------解决方案--------------------
表一字段A=(select sum(表二字段A) form 表二 where id= "+id+ ")

=后面需要表达式,不能是子查询。

可以先建表二的视图解决
------解决方案--------------------
你的id到底是字符串还是数字,在表二的查询中,你没有单引号,在表一中则有。
------解决方案--------------------
像SUM这样的,应该和GROUP BY 连用吧,试试
select sum(表二字段A) form 表二 where id=6244868 group by 表二字段A
------解决方案--------------------
先设置一个变量,把TABLE2的子查询的结果赋给这个变量,然后再做查询!这样应该就可以了