终于领略到oracle的强大,可能其他数据库的也可以.标准SQL?
Update ds_wap_query_top_count c
Set active_num = (Select nvl(active_num, 0)
From ds_wap_query_top_temp t
Where t.key_id = c.key_id
and t.channel_id=c.channel_id
and trunc(t.per_date) = to_date('-01-23','yyyy-MM-dd')
)
where trunc(c.per_date) = to_date('-01-23','yyyy-MM-dd')
;
这个SQL的意思是:首先它会逐行update ds_wap_query_top_count 表,逐行update前它会对带条件的ds_wap_query_top_temp 进行select 操作,当select的条件符合那行的数据时,就更新那行.有点游标的感觉.
如果觉得《数据库中update怎么用事例_Oracle的update语句set里使用子查询的例子解释》对你有帮助,请点赞、收藏,并留下你的观点哦!