ORA-01427: 单行子查询返回多于一个行

来源:百度知道 编辑:UC知道 时间:2024/05/18 05:47:23
update MIS_Base.FcltProperty set Value = '1', Text = '合' where FacilityID = (select rid from MIS_Base.Asset where gid = 212318) and NameEn= 'kgzt'*General SQL error.
ORA-01427: 单行子查询返回多于一个行

改一下

update MIS_Base.FcltProperty set Value = '1', Text = '合' where FacilityID in (select rid from MIS_Base.Asset where gid = 212318) and NameEn= 'kgzt'

=只能等于一个值,用in的话就能等于多个值了,
select rid from MIS_Base.Asset where gid = 212318查询结果肯定大于一条,所以数据库无法识别出来,改成in就没问题了

单独执行下select rid from MIS_Base.Asset where gid = 212318,应该会有多于一笔的数据,改一下让它只出来一笔就OK了