首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

单行子查询返回多于一个行,解决方法!

2014-01-28 
表A,表B, 我要把表B的time数据覆盖A的time数据。。。 其中表B的id 表A 的 id update 表A a set a.time ( s

表A,表B,
我要把表B的time数据覆盖A的time数据。。。
其中表B的id = 表A 的 id

update 表A a set a.time = ( select b.time from 表B b where a.id=b.id) where exists(select 1 from 表B b where a.id=b.id)

运行出错:单行子查询返回多于一个行

请大家告诉我下怎么改?
------解决方法--------------------------------------------------------
update 表A a
set
a.time=(select max(b.time) from 表B b where a.id=b.id)
where
exists(select 1 from 表B b where a.id=b.id)

        

热点排行