update INSP_DECL_CONT set CONT_DECL_NO='7654321' from INSP_DECL_CONT where(select CONT_DECL_NO from INSP_DECL_CONT where WOOD_STATUS=2 and CONT_DECL_NO='1234567');
...全文
1299打赏收藏
求数据库大神帮帮忙呗,谢谢
update INSP_DECL_CONT set CONT_DECL_NO='7654321' from INSP_DECL_CONT where(select CONT_DECL_NO from INSP_DECL_CONT where WOOD_STATUS=2 and CONT_DECL_NO='1234567');
谢谢哈,我已经改完这个sql了,我想做的就是用子查询筛选条件然后进行修改,我改成这样了,可以用《update ("select STATUS from INSP_DECL_CONT where WOOD_STATUS=2 and CONT_DECL_NO=’12345‘ ) set STATUS='放行';》因为我们项目是做的某省海关,所以需要满足条件的才可以放行
首先update from where这个句子某些数据库是不支持的,貌似sql server是可以用的。
个人感觉主要是用在这种情况:一个表进行更新,而更新的数据恰好是另一张表的某个字段值,这个时候这个句式就能排上用场了。
楼主这个明显是只有对表INSP_DECL_CONT的操作,就不用这样写了,直接update INSP_DECL_CONT set CONT_DECL_NO='7654321' 就行,
这个句子的一般是:
update A SET 字段1=B表字段表达式, 字段2=B表字段表达式 from B WHERE 逻辑表达式。
向里面套就行了