请各位大侠,帮小弟解决一下这个问题呗。我刚开始学数据库,完全属于菜鸟水平
大概的问题是这样的,根据下面 where条件,将查询到的结果 跟TEST表中一样的数据进行 sum,
代码如下: UPDATE TEST E
SET E.REQUEST_QTY += A.REQUEST_QTY,
E.REQUEST_AMT += A.REQUEST_AMT
FROM PU02121 A
LEFT JOIN
SA01110 B ON A.CLIENT_CODE = B.CLIENT_CODE
LEFT JOIN
ITEM_V C ON A.ITEM_CODE = C.ITEM_CODE
INNER JOIN
PU02120 D ON A.REQUEST_NO = D.REQUEST_NO
WHERE D.REQUEST_DATE BETWEEN '20120901' AND '20120930'
AND D.FACILITY = '1'
AND A.REQUEST_NO = E.REQUEST_NO AND A.REQUEST_SEQ = E.REQUEST_SEQ(上面用到的join 是因为还有其他变量需要加入到TEXT表中,除了上面那两项以外其他全部可以为空。 我只是为了让程序简便,才省略了其他的项)系统老提示我 E 附近有语法错误,希望各位大侠帮我解决,小弟不胜感激啊!
大概的问题是这样的,根据下面 where条件,将查询到的结果 跟TEST表中一样的数据进行 sum,
代码如下: UPDATE TEST E
SET E.REQUEST_QTY += A.REQUEST_QTY,
E.REQUEST_AMT += A.REQUEST_AMT
FROM PU02121 A
LEFT JOIN
SA01110 B ON A.CLIENT_CODE = B.CLIENT_CODE
LEFT JOIN
ITEM_V C ON A.ITEM_CODE = C.ITEM_CODE
INNER JOIN
PU02120 D ON A.REQUEST_NO = D.REQUEST_NO
WHERE D.REQUEST_DATE BETWEEN '20120901' AND '20120930'
AND D.FACILITY = '1'
AND A.REQUEST_NO = E.REQUEST_NO AND A.REQUEST_SEQ = E.REQUEST_SEQ(上面用到的join 是因为还有其他变量需要加入到TEXT表中,除了上面那两项以外其他全部可以为空。 我只是为了让程序简便,才省略了其他的项)系统老提示我 E 附近有语法错误,希望各位大侠帮我解决,小弟不胜感激啊!
解决方案 »
- sql如何写出excel数据透视表功能
- 求SQL语句。查询当前数据库用户所属的角色,以及某一个角色的所有执行权限。
- 如何把某个字段(int)用字符串表示出来
- 求一条sql
- sql server 2000 存储过程问题,高手请进!
- 誰能告訴我sql server 2000的這三個錯誤事件的意思17055 , 17310 , 17311,Thanks.
- sql sever 2000
- 我如何一次删除多条记录?!?sql server 2000
- 办公自动化OA系统,如何做一个操作说明手册。要求在操作某个界面时,如果需要帮助,则按F1或其它健,就弹出操作说明。
- Oracle视图转到Sql server的问题,哪位高人帮忙看一下
- SQL2008 附加数据库 灰色 只读
- 关于动态列合并的问题
SET E.REQUEST_QTY += A.REQUEST_QTY
...
SET E.REQUEST_QTY += A.REQUEST_QTY......
不对,要么update test,要么update e 当前要定义好e
SET E.REQUEST_QTY += A.REQUEST_QTY,
E.REQUEST_AMT += A.REQUEST_AMT
FROM TEST E
INNER JOIN PU02121 A
ON E.字段=A.字段
--你的问题在于语法错误,这种修改方式,必须在这里先将TEST表和后面的表进行联接,我这里暂时修改成和PU02121表联接。
LEFT JOIN
SA01110 B ON A.CLIENT_CODE = B.CLIENT_CODE
LEFT JOIN
ITEM_V C ON A.ITEM_CODE = C.ITEM_CODE
INNER JOIN
PU02120 D ON A.REQUEST_NO = D.REQUEST_NO
WHERE D.REQUEST_DATE BETWEEN '20120901' AND '20120930'
AND D.FACILITY = '1'
AND A.REQUEST_NO = E.REQUEST_NO AND A.REQUEST_SEQ = E.REQUEST_SEQ具体语法:UPDATE <table> SET <col> = <new_value> [WHERE <where_condition>] !!!
UPDATE <table> SET <col> = <new_value> FROM <table> JOIN <another_table> ON <join_condition> WHERE <where_condition>